@charset "utf-8";

/*-----------------------------------------
common
-----------------------------------------*/
html, body {
	-moz-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}

body {
	text-align: left;
	font-style: normal;
	line-height: 160%;
	font-size: 16px;
	width: 100%;
	color: #000;
}

.sp-only {
	display: none;
}

body,
select,
input,
textarea {
	font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	font-feature-settings: "palt";
}

/* link */
a {
	color: #000;
	text-decoration: underline;
}

a:hover {
	text-decoration: none;
}

a:visited {
	color: #000;
	text-decoration: none;
}

a:active {
	color: #000;
	text-decoration: none;
}

img {
	vertical-align: top;
}


.rollover {
	transition: all 0.3s ease;
}

.rollover:hover {
	opacity: 0.7;
}

.hover_underline {
	text-decoration: none;
}

.hover_underline .rollover_underline {
	position: relative;
	pointer-events: none;
}

.hover_underline .rollover_underline:after {
	content: '';
	position: absolute;
	bottom: -2px;
	left: 0;
	width: 0%;
	height: 1px;
	background: #000;
	transition: all .3s;
}

.hover_underline:hover .rollover_underline:after {
	width: 100%;
}

.taCenter {
	text-align: center;
}

.common-banner {
	display: none;
	position: fixed;
	right: 20px;
	bottom: 20px;
	visibility: hidden;
	opacity: 0;
	transition: all 0.3s ease;
	z-index: 5;
}

.common-banner.common-banner--view {
	visibility: visible;
	opacity: 1;
}

.common-banner.common-banner--hidden {
	display: none;
}

.common-banner .common-banner-close {
	position: absolute;
	right: -15px;
	top: -15px;
	cursor: pointer;
}

.common-banner .common-banner-close img {
	pointer-events: none;
	width: 42px;
	height: auto;
}

.common-banner .common-banner-image img {
	width: 360px;
	height: auto;
}

/*-----------------------------------------
loader
-----------------------------------------*/
.loader {
	display: block;
	border-radius: 50%;
	width: 34px;
	height: 34px;
	transition: all 0.3s ease;
	border-top: 3px solid rgba(0, 0, 0, 0.1);
	border-right: 3px solid rgba(0, 0, 0, 0.1);
	border-bottom: 3px solid rgba(0, 0, 0, 0.1);
	border-left: 3px solid #000;
	animation: loading-animation 1.1s infinite linear;
	overflow: hidden;
	box-sizing: border-box;
}
@-webkit-keyframes loading-animation {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}
@keyframes loading-animation {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}


/*-----------------------------------------
input
-----------------------------------------*/
::placeholder {
	font-weight: 700;
	color: #aeaeae;
}

input[type="text"],
textarea {
	border: 1px solid #858585;
	padding: 10px 23px;
	line-height: 100%;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-webkit-appearance: none;
	appearance: none;
	border-radius: 50px;
	font-size: 15px;
}

textarea {
	width: 100%;
	height: 20em;
	padding: 23px;
}

select {
	background: url(../images/common/icon_selectbox.png) no-repeat right 15px top 50%;
	background-size: 13px 8px;
	border: 2px solid #000;
	border-radius: 8px;
	width: 100%;
	height: 58px;
	padding: 0 45px 0 20px;
	box-sizing: border-box;
	font-size: 16px;
	font-weight: 700;
	color: #999999;
}

select.current {
	color: #000;
}

select option {
	color: #000;
	font-weight: normal;
}

select::-ms-expand {
	display: none;
}

input[type="radio"] {
	display: none;
}

input[type="radio"] + span {
	display: inline-block;
	position: relative;
	cursor: pointer;
	padding: 0.2em 0 0 30px;
	min-height: 20px;
	line-height: 100%;
	font-weight: normal;
}

input[type="radio"] + span:before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	content: '';
	width: 20px;
	height: 20px;
	border: 1px solid #999;
	border-radius: 10px;
	box-sizing: border-box;
	background: #FFF;
	vertical-align: top;
	line-height: 1;
	font-size: 0;
}

input[type="radio"]:checked + span:after {
	display: block;
	position: absolute;
	top: 4px;
	left: 4px;
	display: block;
	content: '';
	width: 12px;
	height: 12px;
	border-radius: 8px;
	box-sizing: border-box;
	background: #c7000a;
	vertical-align: top;
	line-height: 1;
	font-size: 0;
}


input[type="checkbox"] {
	display: none;
}

input[type="checkbox"] + span {
	display: inline-block;
	position: relative;
	cursor: pointer;
	padding: 0.2em 0 0 30px;
	min-height: 20px;
	line-height: 100%;
	font-weight: normal;
}

input[type="checkbox"] + span:empty {
	padding-left: 0;
}

input[type="checkbox"] + span:before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	content: '';
	width: 20px;
	height: 20px;
	border: 1px solid #999;
	background: #FFF;
	box-sizing: border-box;
	vertical-align: top;
	line-height: 1;
	font-size: 0;
}

input[type="checkbox"].checked + span:before {
	background: #999;
}

input[type="checkbox"] + span:after {
	position: absolute;
	top: 3px;
	left: 6px;
	display: block;
	content: '';
	transform : scaleX(0) scaleY(0) rotate(45deg);
	border-right: 2px solid #c7000a;
	border-bottom: 2px solid #c7000a;
	transform-origin: center center;
	width: 7px;
	height: 10px;
}

input[type="checkbox"].checked + span:after {
	border-color: #FFF;
	transform : scaleX(1) scaleY(1) rotate(45deg);
}

input[type="checkbox"]:checked + span:after {
	transform : scaleX(1) scaleY(1) rotate(45deg);
}


/*-----------------------------------------
header
-----------------------------------------*/
#header {
	position: relative;
	min-width: 1150px;
}

body.home #header {
	-webkit-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.15);
	-moz-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.15);
	box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.15);
}

#header .header__inner {
	/*
	max-width: 1360px;
	*/
	margin: 0 auto 0 auto;
	padding: 0 32px 0 24px;
	box-sizing: border-box;
}

#header .header__inner:after {
	display: block;
	clear: both;
	content: '';
}

#header .header__logo {
	float: left;
	padding: 14px 0 14px 0;
	margin-right: 0;
	width: 302px;
}

#header .header__nav {
	float: right;
}

#header .header__nav > ul {
	font-size: 0;
}

#header .header__nav > ul > li {
	display: inline-block;
	position: relative;
}

#header .header__nav > ul > li.sp-only {
	display: none;
}

#header .header__nav > ul > li > ul {
	display: none;
}

#header .header__nav > ul > li > a {
	display: block;
	text-decoration: none;
	font-weight: 700;
	height: 80px;
	line-height: 80px;
	padding: 0 20px;
	font-size: 16px;
}

#header .header__nav > ul > li.nav__more > a {
	padding-left: 32px;
}

#header .header__nav > ul > li.nav__more > a:after {
	display: block;
	position: absolute;
	top: 50%;
	left: 16px;
	margin-top: -3px;
	width: 5px;
	height: 5px;
	border-bottom: 1px solid #000;
	border-right: 1px solid #000;
	box-sizing: border-box;
	content: '';
	transform: rotate(45deg);
}

#header .header__nav > ul > li.nav__more--open > a:after {
	margin-top: 0;
	transform: rotate(-135deg);
}

#header .header__nav > ul > li .more__inner {
	visibility: hidden;
	position: absolute;
	top: 100%;
	left: 50%;
	width: 280px;
	margin-left: -140px;
	background: #FFF;
	border-radius: 8px;
	padding: 30px 30px;
	font-size: 15px;
	-webkit-box-shadow: 5px 5px 15px 0px rgba(0,0,0,0.3);
	-moz-box-shadow: 5px 5px 15px 0px rgba(0,0,0,0.3);
	box-shadow: 5px 5px 15px 0px rgba(0,0,0,0.3);
	margin-top: -15px;
	box-sizing: border-box;
	z-index: -1;
	opacity: 0;
	transition: all 0.3s ease;
}

#header .header__nav > ul > li .more__inner.more__inner--open {
	visibility: visible;
	z-index: 10;
	opacity: 1;
}

#header .header__nav > ul > li .more__inner ul li {
	margin-bottom: 5px;
}

#header .header__nav > ul > li .more__inner ul li ul {
	margin-top: 5px;
	margin-left: 1.5em;
	font-size: 14px;
}

#header .header__nav > ul > li .more__inner ul:last-child li:last-child {
	margin-bottom: 0;
}

#header .header__nav > ul > li .more__inner ul li a {
	display: block;
	text-decoration: none;
}

#header .header__nav > ul > li .more__inner ul li a:hover {
	text-decoration: underline;
}

#header .header__sns {
	position: relative;
	float: right;
	margin-top: 30px;
	margin-left: 60px;
}

#header .header__sns ul {
	display: flex;
}

#header .header__sns ul li {
	margin-right: 16px;
}

#header .header__sns ul li:last-child {
	margin-right: 0;
}

#header .header__sns ul li img {
	width: 20px;
}


#header .header__search {
	position: relative;
	float: right;
	margin-top: 20px;
}

#header .header__search .search__keyword {
	width: 230px;
	border: 1px solid #b0b0b0;
	box-sizing: border-box;
	height: 40px;
	line-height: 40px;
	padding: 0 40px 0 30px;
	border-radius: 20px;
	font-size: 16px;
}

#header .header__search .search__button {
	position: absolute;
	display: block;
	width: 15px;
	height: 14px;
	margin-top: -8px;
	top: 50%;
	right: 14px;
}

#header .header__menu {
	display: none;
}

#header .header__promotion {
	display: flex;
	justify-content: space-between;
	clear: both;
}

#header .header__attentionKeyword {
	clear: both;
	font-size: 0;
	/*text-align: center;*/
	vertical-align: top;
	line-height: 100%;
	padding-bottom: 10px;
	overflow: auto;
	flex: 1;
}

#header .header__attentionKeyword .attentionKeyword__title {
	display: inline-block;
	margin-right: 20px;
	font-size: 14px;
}

#header .header__attentionKeyword .attentionKeyword__list {
	display: inline-block;
	white-space: nowrap;
}

#header .header__attentionKeyword .attentionKeyword__list li {
	display: inline-block;
	margin-right: 7px;
}

#header .header__attentionKeyword .attentionKeyword__list li:last-child {
	display: inline-block;
	margin-right: 0;
}

#header .header__attentionKeyword .attentionKeyword__list li a {
	display: block;
	background: #E5E5E5;
	text-decoration: none;
	line-height: 100%;
	padding: 5px 10px;
	border-radius: 20px;
	font-size: 14px;
}

#header .header__promotion .header__promotion__text {
	font-size: 14px;
	color: #666;
}

/*-----------------------------------------
feature
-----------------------------------------*/
#feature {
	border-top: 1px solid #FFF;
	background: url(../images/feature/bg_mv01.png) no-repeat 0 211px, url(../images/feature/bg_mv02.png) no-repeat 100% 53px #f2f2f2;
}

#feature #contents {
	margin-bottom: 0!important;
	padding-top: 30px;
}

/*-----------------------------------------
contents
-----------------------------------------*/
#contents {
	width: 1150px;
	margin: 0 auto 80px auto;
}

#contents:after {
	display: block;
	clear: both;
	content: '';
}

/*-----------------------------------------
main
-----------------------------------------*/
#main {
	float: left;
	width: 820px;
}

#main.main--1column {
	float: none;
	margin-left: auto;
	margin-right: auto;
}

/*-----------------------------------------
side
-----------------------------------------*/
#side {
	float: right;
	width: 280px;
	padding-top: 30px;
}

#feature #side {
	padding-top: 0;
}

body.home #side {
	padding-top: 0;
}

#side .side__specialList {
	margin-bottom: 60px;
}

#side .side__nav {
	margin-bottom: 20px;
}

#side .side__nav.side__nav--bg {
	background: #f6f6f6;
	padding: 30px 20px;
}

#side .side__nav.side__nav--radius {
	background: #FFF;
	padding: 30px 20px;
	border-radius: 8px;
}

#side .side__nav {
	font-size: 15px;
}

#side .side__nav > ul > li {
	margin-bottom: 20px;
}

#side .side__nav > ul > li:last-child {
	margin-bottom: 0;
}

#side .side__nav .nav__head {
	display: flex;
	font-weight: 700;
	color: #6A2F00;
}

#side .side__nav .nav__head a {
	display: block;
	width: 100%;
	color: #6A2F00;
	text-decoration: none;
}

#side .side__nav .nav__head a:hover {
	text-decoration: underline;
}

#side .side__nav .nav__head.nav__head--large {
	margin-bottom: 20px;
	font-size: 20px;
}

#side .side__nav .nav__head.nav__head--middle {
	margin-bottom: 20px;
	font-size: 18px;
}

#side .side__nav .nav__head.nav__head--small {
	margin-bottom: 15px;
	font-size: 15px;
}

#side .side__nav > ul > li > ul {
}

#side .side__nav > ul > li > ul > li {
	margin-bottom: 5px;
	font-weight: normal;
}

#side .side__nav > ul > li > ul > li a {
	display: block;
	text-decoration: none;
}

#side .side__nav > ul > li > ul > li a:hover {
	text-decoration: underline;
}

/*-----------------------------------------
topicPath
-----------------------------------------*/
.topicPath {
	background: #f0f0f0;
	min-width: 1150px;
	padding: 12px 0;
	line-height: 100%;
	font-size: 0;
}

.topicPath.topicPath--last {
	background: #EFE9CC;
	margin-top: 30px;
}

.topicPath ol {
	width: 1150px;
	margin: 0 auto;
}

.topicPath ol li {
	display: inline-block;
	line-height: 135%;
	font-size: 12px;
	color: #000;
}

.topicPath ol li a {
	display: block;
	position: relative;
	text-decoration: none;
	margin-right: 10px;
	padding-right: 17px;
	color: #000;
}

.topicPath.topicPath--last ol li,
.topicPath.topicPath--last ol li a {
}

.topicPath ol li a:hover {
	text-decoration: underline;
}

.topicPath ol li a:after {
	position: absolute;
	top: 50%;
	right: 0;
	content: '>';
	margin-top: -0.8em;
}

/*-----------------------------------------
sectionItem
-----------------------------------------*/
.sectionItem {
	margin-bottom: 70px!important;
}

.sectionItem--child {
	margin-bottom: 50px!important;
}

/*-----------------------------------------
table
-----------------------------------------*/
.table01 {
	border-top: 1px solid #CCC;
	width: 100%;
}

.table01 th {
	border-bottom: 1px solid #CCC;
	padding: 13px 40px 13px 0;
	line-height: 162%;
	font-size: 16px;
	font-weight: 700;
}

.table01 td {
	border-bottom: 1px solid #CCC;
	padding: 13px 0;
	line-height: 162%;
	font-size: 16px;
}

.table02 {
	width: 100%;
}

.table02 th {
	border: 1px solid #CCC;
	padding: 15px;
	line-height: 162%;
	font-size: 16px;
	font-weight: 700;
	text-align: center;
}

.table02 td {
	border: 1px solid #CCC;
	padding: 15px 25px;
	line-height: 162%;
	font-size: 16px;
}

.table03 {
	margin-bottom: 2em;
	width: 100%;
}

.table03 caption {
	caption-side: bottom;
	margin-top: 10px;
	text-align: right;
	font-size: 14px;
}

.table03 th {
	border: 1px solid #CCC;
	background: #f2f2f2;
	padding: 10px 5px;
	line-height: 162%;
	font-size: 14px;
	font-weight: 700;
	text-align: center;
}

.table03 .total {
	background: #FFFBEE;
}

.table03 td {
	border: 1px solid #CCC;
	padding: 10px;
	line-height: 162%;
	font-size: 15px;
	vertical-align: middle;
	text-align: center;
}

.table03 td p:last-child {
	margin-bottom: 0;
}

.table03 td strong {
	font-size: 1.5em;
	color: #c7000a;
}

/*-----------------------------------------
googleMaps
-----------------------------------------*/
.googleMaps {
	position: relative;
	padding-bottom: 100%;
	height: 0;
	overflow: hidden;
}

.googleMaps iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}

/*-----------------------------------------
tabList
-----------------------------------------*/
.tabList {
	margin-bottom: 25px;
	padding-bottom: 14px;
	border-bottom: 1px solid #000;
}

.tabList ul {
	display: flex;
}

.tabList.tabList--space ul {
	justify-content: space-between;
}

.tabList ul li {
	margin-right: 15px;
}

.tabList.tabList--space ul li {
	margin-right: 0;
}

.tabList ul li a {
	display: block;
	padding: 10px 14px;
	min-width: 90px;
	border-radius: 40px;
	line-height: 100%;
	font-size: 16px;
	font-weight: 700;
	text-decoration: none;
	text-align: center;
}

.tabList ul li a:hover {
	color: #999;
}

.tabList ul li a.current {
	background: #DFD5A4;
	color: #000000;
}

.tabList--open--target {
	display: none;
	visibility: hidden;
	z-index: -1;
	transition: all 0.3s ease;
	opacity: 0;
}

.tabList--open--target.tabList--current {
	display: block;
	visibility: visible;
	z-index: 1;
	opacity: 1;
}

/*-----------------------------------------
simulatorList
-----------------------------------------*/
.simulatorList ul {
	display: flex;
	padding-top: 10px;
	flex-wrap: wrap;
	justify-content: space-between;
}

#feature .entry .simulatorList ul {
	padding-top: 0;
}

.simulatorList ul li {
	width: 49%;
	margin-top: 20px;
}

#feature .entry .simulatorList ul li:nth-child(1),
#feature .entry .simulatorList ul li:nth-child(2) {
	margin-top: 0;
}

.simulatorList ul li a.button01 {
	display: block;
	width: auto;
}

/*-----------------------------------------
portalList
-----------------------------------------*/
.portalList ul {
	display: flex;
	margin-top: -20px;
	flex-wrap: wrap;
	justify-content: space-between;
}

.portalList ul:before{
	content: "";
	display: block;
	width: 23%;
	order: 1;
}

.portalList ul:after {
	display: block;
	content:"";
	width: 23%;
}

.portalList ul li {
	width: 23%;
	margin-top: 20px;
}

.portalList ul li a.button01 {
	display: block;
	width: auto;
}


/*-----------------------------------------
cardList
-----------------------------------------*/
.cardList {
}

.cardList ul {
	display: flex;
	flex-wrap: wrap;
}

.cardList ul li {
	margin-top: 30px;
}

.cardList.cardList--column3 ul li {
	width: 31%;
	margin-right: 3.5%;
}

.cardList.cardList--ranking ul li {
	position: relative;
	padding-top: 40px;
}

.cardList.cardList--ranking ul li:first-child {
	margin-top: 0;
}

.cardList.cardList--ranking ul li:before {
	display: block;
	border-top: 1px solid #858585;
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
}

.cardList.cardList--column3 ul li:nth-child(3n) {
	margin-right: 0;
}

.cardList.cardList--column4 ul li {
	width: 23%;
	margin-right: 2.6%;
}

.cardList.cardList--column4 ul li:nth-child(4n) {
	margin-right: 0;
}

.cardList.cardList--column3 ul li:nth-child(1),
.cardList.cardList--column3 ul li:nth-child(2),
.cardList.cardList--column3 ul li:nth-child(3) {
	margin-top: 0;
}

.cardList ul li a {
	display: block;
	text-decoration: none;
	line-height: 137%;
}

.cardList ul li:after,
.cardList ul li a:after {
	display: block;
	clear: both;
	content: '';
}

.cardList ul li .item__head {
	margin-bottom: 20px;
	display: flex;
	align-items: center;
}

.cardList ul li .item__head .item__head__description {
	flex: 1;
	margin-left: 0;
}

.cardList ul li:nth-child(1) .item__head__description,
.cardList ul li:nth-child(2) .item__head__description,
.cardList ul li:nth-child(3) .item__head__description {
	margin-left: 0;
}

.cardList ul li .item__rank {
	display: block;
	background: #F8F5E4;
	border-radius: 17px;
	margin: 0 auto 17px auto;
	width: 34px;
	height: 34px;
	line-height: 34px;
	box-sizing: border-box;
	text-align: center;
	font-weight: 700;
	font-size: 16px;
	color: #6A2F00;
}

.cardList ul li:nth-child(1) .item__rank,
.cardList ul li:nth-child(2) .item__rank,
.cardList ul li:nth-child(3) .item__rank {
	border: none;
	border-radius: 0;
	background-color: transparent;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: contain;
	width: 55px;
	height: 44px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}

.cardList ul li:nth-child(1) .item__rank {
	background-image: url(../images/common/icon_ranking_number1.svg);
}

.cardList ul li:nth-child(2) .item__rank {
	background-image: url(../images/common/icon_ranking_number2.svg);
}

.cardList ul li:nth-child(3) .item__rank {
	background-image: url(../images/common/icon_ranking_number3.svg);
}


.cardList ul li .item__figure {
	position: relative;
	display: block;
	margin-bottom: 15px;
}

.cardList ul li .item__figure:before {
	display: block;
	content: '';
	padding-top : 100%;
}

.cardList ul li .item__figure img {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
	border: 1px solid #C4C4C4;
	border-radius: 8px;
	box-sizing: border-box;
}

.cardList ul li .description__place {
	display: block;
	margin-bottom: 10px;
	font-size: 14px;
	font-weight: 700;
	color: #858585;
}

.cardList ul li .description__title {
	margin-bottom: 17px;
	padding-bottom: 3px;
	font-weight: 700;
	font-size: 16px;
	display: block;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	line-height: 150%;
	-webkit-line-clamp: 2;
	overflow: hidden;
}

.cardList ul li a.description__title:hover {
	text-decoration: underline;
}

.cardList ul li .description__price {
	display: block;
	margin-bottom: 5px;
	font-weight: 700;
	font-size: 24px;
	color: #C4121A;
}

.cardList ul li .description__source {
	display: block;
	font-size: 12px;
	color: #858585;
}

.cardList.cardList--ranking ul li .item__figure {
	float: left;
	width: 300px;
}

.cardList.cardList--ranking ul li .item__description {
	float: left;
	margin-left: 35px;
	width: 485px;
}

.cardList.cardList--ranking ul li .description__place {
	margin-bottom: 5px;
}

.cardList.cardList--ranking ul li .description__title {
	margin-bottom: 7px;
	font-size: 24px;
}

.cardList.cardList--ranking ul li .description__text {
	display: block;
	margin-top: 20px;
	line-height: 150%;
	font-size: 16px;
}

.cardList.cardList--ranking ul li .description__button {
	display: block;
	margin-top: 15px;
	width: auto;
	padding: 10px;
	font-size: 14px;
}

.cardList.cardList--ranking ul li .description__button {
	width: 400px;
	margin-top: 35px;
	padding: 12px;
	font-size: 16px;
}

/*-----------------------------------------
notFound
-----------------------------------------*/
.notFound {
	border: 1px solid #000;
	margin-top: 2em;
	padding: 30px 40px;
	text-align: center;
}

/*-----------------------------------------
tagList
-----------------------------------------*/
.tagList {
	margin-top: -10px;
}

.tagList ul {
	display: block!important;
	font-size: 0;
}

.tagList ul li {
	display: inline-block!important;
	margin: 0 13px 13px 0!important;
	padding: 0!important;
	width: auto!important;
}

.tagList ul li:before {
	display: none!important;
}

.tagList ul li a {
	display: block;
	border-radius: 30px;
	background: #E5E5E5;
	line-height: 140%;
	padding: 5px 10px;
	transition: all 0.3s ease;
	text-decoration: none;
	font-size: 14px;
	font-weight: 700;
}

.tagList ul li a:hover {
	text-decoration: underline;
	background-color: #C71017;
	color: #FFF;
}

/*-----------------------------------------
specialList
-----------------------------------------*/
.specialList ul {
	font-size: 0;
}

.specialList.specialList--normal ul li {
	display: inline-block;
	width: 48.7%;
	vertical-align: top;
	margin: 20px 2.6% 0 0;
}

.specialList.specialList--column1 ul li {
	display: block;
	width: auto;
	vertical-align: top;
	margin: 30px 0 0 0;
}

.specialList.specialList--column3 ul li {
	display: inline-block;
	width: 31%;
	vertical-align: top;
	margin: 30px 3.5% 0 0;
}

.specialList.specialList--normal.specialList--radius ul li {
	width: 48.7%;
	margin: 20px 2.6% 0 0;
}


.specialList.specialList--column1 ul li:nth-child(1),
.specialList.specialList--column3 ul li:nth-child(1),
.specialList.specialList--column3 ul li:nth-child(2),
.specialList.specialList--column3 ul li:nth-child(3) {
	margin-top: 0;
}

.specialList.specialList--normal ul li:nth-child(1),
.specialList.specialList--normal ul li:nth-child(2) {
	margin-top: 0;
}

.specialList.specialList--normal ul li:nth-child(2n) {
	margin-right: 0;
}

.specialList.specialList--column3 ul li:nth-child(3n) {
	margin-right: 0;
}

.specialList ul li a {
	display: block;
	text-decoration: none;
}


.specialList.specialList--normal li a {
	background: #F8F5E4;
	padding: 30px;
	border-radius: 8px;
}

.specialList ul li a:after {
	display: block;
	clear: both;
	content: '';
}

.specialList.specialList--radius ul li a {
	background: #FFF;
	border-radius: 8px;
}

.specialList ul li a .item__figure {
	position: relative;
	display: block;
}

.specialList ul li a .item__figure:before {
	display: block;
	content: '';
	padding-top : 100%;
}

.specialList ul li a .item__figure.item__figure--fitnone:before {
	display: none;
}

.specialList ul li a .item__figure.item__figure--aspect1:before {
	padding-top : 58.6%;
}

.specialList.specialList--normal ul li a .item__figure {
	float: left;
	width: 150px;
}

.specialList.specialList--column3 ul li .item__figure {
	float: none;
	width: auto;
}

.specialList ul li a .item__figure img {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 8px;
	border: 1px solid #C4C4C4;
	box-sizing: border-box;
}

.specialList ul li a .item__figure.item__figure--fitnone img {
	position: static;
	width: 100%;
	height: auto;
	object-fit: fill;
}

.specialList.specialList--radius ul li a .item__figure img {
	-webkit-border-top-left-radius: 8px;
	-webkit-border-bottom-left-radius: 8px;
	-moz-border-radius-topleft: 8px;
	-moz-border-radius-bottomleft: 8px;
	border-top-left-radius: 8px;
	border-bottom-left-radius: 8px;
}

.specialList ul li a .item__description {
	display: block;
	font-size: 16px;
}

.specialList ul li a .item__description .description__category {
	display: block;
	color: #828282;
}

.specialList.specialList--normal ul li a .item__description {
	margin-left: 170px;
}

.specialList.specialList--radius ul li a .item__description {
	padding: 20px 20px 0 0;
}

.specialList.specialList--normal ul li a .item__description .description__category {
	margin-bottom: 10px;
}

.specialList.specialList--radius ul li a .item__description .description__category {
	color: #999999;
	font-weight: 700;
}

.specialList.specialList--column1 ul li a .item__description .description__category,
.specialList.specialList--column3 ul li a .item__description .description__category {
	margin-top: 15px;
}

.specialList ul li a .item__description .description__title {
	display: block;
	font-weight: 700;
}

.specialList.specialList--radius ul li a .item__description .description__title {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
}


/*-----------------------------------------
categoryList
-----------------------------------------*/
.categoryList ul {
	margin-top: -10px;
	display: flex;
	flex-wrap: wrap;
}

.categoryList ul li {
	border-right: 1px solid #000000;
	border-top: 1px solid #000000;
	border-bottom: 1px solid #000000;
	margin-bottom: -1px;
	box-sizing: border-box;
	width: 25%;
	text-align: center;
}

.categoryList ul li:nth-child(4n+1) {
	border-left: 1px solid #000000;
}

.categoryList--toggle ul li {
	display: none;
/*
	transition: all 0.3s ease;
	opacity: 0;
*/
}

/*
.categoryList--toggle ul li.show {
	display: block;
	opacity: 1;
}
*/

.categoryList ul li a {
	display: flex;
	background: #FCFBF5;
	align-items: center;
	padding: 10px 10px;
	text-decoration: none;
	font-weight: 700;
	font-size: 18px;
	height: 100%;
	min-height: 65px;
	box-sizing: border-box;
	line-height: 133%;
	transition: all 0.3s ease;
}

.categoryList ul li a:hover {
	background: #FCFCFC;
	text-decoration: underline;
}

.categoryList ul li a span {
	width: 100%;
	pointer-events: none;
}

.categoryList--donation ul li a {
	letter-spacing: -0.06em;
}


/*-----------------------------------------
hierarchyCategoryList
-----------------------------------------*/
.hierarchyCategoryList > ul {
	background: #FFF;
	padding: 30px 20px 30px 20px;
	border-radius: 10px;
}

.hierarchyCategoryList > ul > li {
	margin-bottom: 30px;
}

.hierarchyCategoryList > ul > li:last-child {
	margin-bottom: 0;
}

.hierarchyCategoryList > ul > li > p {
	margin-bottom: 10px;
}

.hierarchyCategoryList > ul > li > p a {
	font-weight: 700;
	color: #6A2F00;
}

.hierarchyCategoryList > ul > li > ul {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 20px;
}

.hierarchyCategoryList ul li a {
	display: block;
	text-decoration: none;
}

.hierarchyCategoryList ul li a:hover {
	text-decoration: underline;
}

/*-----------------------------------------
tagCategoryList
-----------------------------------------*/
.tagCategoryList ul {
	display: flex;
	background: #FFF;
	padding: 30px 20px 20px 20px;
	border-radius: 10px;
	flex-wrap: wrap;
}

.tagCategoryList ul li {
	margin-right: 20px;
	margin-bottom: 10px;
}

.tagCategoryList ul li a {
	display: block;
	text-decoration: none;
}

.tagCategoryList ul li a:hover {
	text-decoration: underline;
}

/*-----------------------------------------
featureCategoryList
-----------------------------------------*/
.featureCategoryList ul {
	display: flex;
	flex-wrap: wrap;
}

.featureCategoryList ul li {
	width: 32%;
	margin: 20px 2% 0 0;
}

.featureCategoryList ul li:nth-child(1),
.featureCategoryList ul li:nth-child(2),
.featureCategoryList ul li:nth-child(3) {
	margin-top: 0;
}

.featureCategoryList ul li:nth-child(3n) {
	margin-right: 0;
}

.featureCategoryList ul li a {
	display: flex;
	justify-content: center;
	align-items: center;
	background: #FFF;
	text-decoration: none;
	font-weight: 700;
}

.featureCategoryList ul li a .item__figure {
	width: 31%;
}

.featureCategoryList ul li a .item__figure img {
	width: 100%;
}

.featureCategoryList ul li a .item__description {
	width: 69%;
	padding: 0 0 0 15px;
	box-sizing: border-box;
}


/*-----------------------------------------
faqList
-----------------------------------------*/
.faqList dl dt {
	margin-bottom: 20px;
	font-weight: normal;
}

.faqList dl dd {
	margin-bottom: 50px;
}

.faqList dl dd:last-child {
	margin-bottom: 0;
}

.faqList dl .item__icon {
	float: left;
	padding: 0 0 0 10px;
	font-size: 22px;
	font-weight: 700;
}

.faqList dl .item__text {
	display: block;
	margin-left: 60px;
}

/*-----------------------------------------
faqAnchorList
-----------------------------------------*/
.faqAnchorList {
	border: 1px solid #CCC;
	padding: 30px;
}

.faqAnchorList li {
	display: inline-block;
	width: 270px;
	margin: 10px 0 0 0;
}

.faqAnchorList li:nth-child(1),
.faqAnchorList li:nth-child(2) {
	margin-top: 0;
}

.faqAnchorList li a {
	position: relative;
	display: block;
	padding-left: 16px;
	font-size: 15px;
	font-weight: 700;
	text-decoration: none;
}

.faqAnchorList li a:after {
	display: block;
	position: absolute;
	top: 0.4em;
	left: 2px;
	width: 7px;
	height: 7px;
	content: '';
	border-bottom: 2px solid #858585;
	border-right: 2px solid #858585;
	transform: rotate(45deg);
}

.faqAnchorList li a:hover {
	text-decoration: underline;
}

/*-----------------------------------------
faqSectionItem
-----------------------------------------*/
.faqSectionItem li {
	margin-top: 15px;
	line-height: 133%;
}

.faqSectionItem li:first-child {
	margin-top: 0;
}

.faqSectionItem li a {
	position: relative;
	display: block;
	padding-left: 21px;
	text-decoration: none;
	font-size: 18px;
}

.faqSectionItem li a:after {
	display: block;
	position: absolute;
	top: 0.3em;
	left: 5px;
	width: 8px;
	height: 8px;
	content: '';
	border-top: 2px solid #858585;
	border-right: 2px solid #858585;
	transform: rotate(45deg);
}

.faqSectionItem li a:hover {
	text-decoration: underline;
}

/*-----------------------------------------
faqDetail
-----------------------------------------*/
.faqDetail p {
	margin-bottom: 1em;
}

.faqDetail .faqDetail__note {
	font-size: 14px;
}

/*-----------------------------------------
narrowDownSearch
-----------------------------------------*/
.narrowDownSearch {
	display: flex;
	margin-bottom: 35px;
	align-items: center;
}

.narrowDownSearch .narrowDownSearch__total {
	flex: 1;
}

.narrowDownSearch .narrowDownSearch__total b {
	font-size: 24px;
	font-weight: 700;
}

.narrowDownSearch .narrowDownSearch__donation {
	margin-right: 20px;
}

.narrowDownSearch .narrowDownSearch__donation,
.narrowDownSearch .narrowDownSearch__filter {
	position: relative;
	border: 2px solid #000;
	border-radius: 8px;
	width: 284px;
	height: 58px;
	box-sizing: border-box;
	cursor: pointer;
}

.narrowDownSearch .narrowDownSearch__donation .donation__head,
.narrowDownSearch .narrowDownSearch__filter .filter__head {
	position: relative;
	padding-left: 100px;
	z-index: 2;
	pointer-events: none;
}

.narrowDownSearch .narrowDownSearch__donation .donation__head .head__title,
.narrowDownSearch .narrowDownSearch__filter .filter__head .head__title {
	line-height: 56px;
	font-size: 16px;
	font-weight: 700;
}

.narrowDownSearch .narrowDownSearch__donation .donation__head .head__price {
	display: none;
}

.narrowDownSearch .narrowDownSearch__filter .filter__head .head__text,
.narrowDownSearch .narrowDownSearch__filter .filter__head .button__clear,
.narrowDownSearch .narrowDownSearch__filter .filter__head .button__search {
	display: none;
}

.narrowDownSearch .narrowDownSearch__donation.narrowDownSearch__donation--setting .donation__head .head__title,
.narrowDownSearch .narrowDownSearch__filter.narrowDownSearch__filter--setting .filter__head .head__title {
	padding-top: 10px;
	line-height: 100%;
	font-size: 13px;
	font-weight: 700;
	color: #999999;
}

.narrowDownSearch .narrowDownSearch__donation.narrowDownSearch__donation--open .donation__inner,
.narrowDownSearch .narrowDownSearch__filter.narrowDownSearch__filter--open .filter__inner {
	pointer-events: auto;
}

/* donation */
.narrowDownSearch .narrowDownSearch__donation:after {
	position: absolute;
	top: 50%;
	left: 16px;
	content: '';
	background: url(../images/common/icon_yen.png) no-repeat 0 0;
	background-size: 13px 16px;
	width: 13px;
	height: 16px;
	margin-top: -8px;
	z-index: 3;
}

.narrowDownSearch .narrowDownSearch__donation .donation__inner {
	position: absolute;
	visibility: hidden;
	background: #FFF;
	left: -2px;
	top: -2px;
	right: -2px;
	border-radius: 8px;
	-webkit-box-shadow: 5px 5px 15px 0px rgba(0,0,0,0.3);
	-moz-box-shadow: 5px 5px 15px 0px rgba(0,0,0,0.3);
	box-shadow: 5px 5px 15px 0px rgba(0,0,0,0.3);
	z-index: -1;
	cursor: default;
	transition: all 0.3s ease;
	opacity: 0;
}

.narrowDownSearch .narrowDownSearch__donation .donation__head:after {
	position: absolute;
	content: '';
	top: 17px;
	right: 18px;
	border-left: 2px solid #000;
	border-bottom: 2px solid #000;
	width: 9px;
	height: 9px;
	box-sizing: border-box;
	transform-origin: 100% 100%;
	transform: rotate(-45deg);
}

.narrowDownSearch .narrowDownSearch__donation .donation__pulldown {
	padding:  69px 23px 23px 23px;
	font-size: 15px;
}

/* donation setting */
.narrowDownSearch .narrowDownSearch__donation.narrowDownSearch__donation--setting .donation__head .head__price {
	display: block;
	font-size: 16px;
	font-weight: 700;
}

.narrowDownSearch .narrowDownSearch__donation.narrowDownSearch__donation--setting .donation__head {
	padding-left: 50px;
}

/* donation open */
.narrowDownSearch .narrowDownSearch__donation.narrowDownSearch__donation--open .donation__inner {
	visibility: visible;
	opacity: 1;
	z-index: 1;
}

.narrowDownSearch .narrowDownSearch__donation.narrowDownSearch__donation--open .donation__head {
	padding-left: 50px;
}

/* filter */
.narrowDownSearch .narrowDownSearch__filter:after {
	position: absolute;
	top: 50%;
	left: 16px;
	content: '';
	background: url(../images/common/icon_filter.png) no-repeat 0 0;
	background-size: 21px 14px;
	width: 21px;
	height: 14px;
	margin-top: -7px;
	z-index: 3;
}

.narrowDownSearch .narrowDownSearch__filter .filter__inner {
	position: absolute;
	visibility: hidden;
	background: #FFF;
	left: -2px;
	top: -2px;
	right: -2px;
	border-radius: 8px;
	-webkit-box-shadow: 5px 5px 15px 0px rgba(0,0,0,0.3);
	-moz-box-shadow: 5px 5px 15px 0px rgba(0,0,0,0.3);
	box-shadow: 5px 5px 15px 0px rgba(0,0,0,0.3);
	width: 580px;
	padding-top: 70px;
	z-index: -1;
	cursor: default;
	transition: all 0.3s ease;
	opacity: 0;
}

.narrowDownSearch .narrowDownSearch__filter .filter__head .button__clear,
.narrowDownSearch .narrowDownSearch__filter .filter__head .button__search {
	pointer-events: auto;
}

.narrowDownSearch .narrowDownSearch__filter .filter__head .button__clear {
	width: 112px;
	line-height: 50px;
	height: 50px;
	box-sizing: border-box;
	text-align: center;
	border: 1px solid #CCC;
	background: #FFF;
	border-radius: 8px;
	font-size: 16px;
	font-weight: 700;
	color: #999;
}

.narrowDownSearch .narrowDownSearch__filter .filter__head .button__search {
	width: 192px;
	margin-left: 10px;
	line-height: 50px;
	height: 50px;
	box-sizing: border-box;
	text-align: center;
	background: #c7000a;
	border-radius: 8px;
	font-size: 16px;
	font-weight: 700;
	color: #FFF;
}

.narrowDownSearch .narrowDownSearch__filter .filter__pulldown {
	height: 480px;
	-webkit-overflow-scrolling: touch;
	overflow: auto;
}

.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__keyword {
	padding: 10px 30px 20px 30px;
}

.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__keyword .keyword__title {
	margin-bottom: 5px;
	font-size: 16px;
	font-weight: 700;
}

.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__keyword .keyword__input input {
	max-width: 100%;
	width: 100%;
	height: 48px;
	line-height: 48px;
	padding-top: 0;
	padding-bottom: 0;
}

.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category > ul {
	border-bottom: 1px solid #999;
}

.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category > ul > li {
	border-top: 1px solid #999;
}

.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category > ul > li > .category__text,
.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category > ul > li label {
	display: block;
	position: relative;
	padding: 15px 20px;
	font-size: 16px;
	font-weight: 700;
	cursor: pointer;
}

.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category > ul > li > ul {
	background: #efefef;
	font-size: 15px;
}

.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category .accordion-toggle {
	position: absolute;
	display: block;
	content: '';
	width: 50px;
	top: 0;
	right: 0;
	z-index: 1;
	cursor: pointer;
}

.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category .accordion-open {
	position: relative;
}

.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category .accordion-open:after {
	position: absolute;
	content: '';
	top: 20px;
	right: 20px;
	border-left: 2px solid #000;
	border-bottom: 2px solid #000;
	width: 9px;
	height: 9px;
	box-sizing: border-box;
	transform: rotate(-45deg);
	pointer-events: none;
}

.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category .accordion-open.accordion-open--current:after {
	top: 25px;
	transform: rotate(135deg);
}

.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category > ul > li > ul .accordion-open:after {
	top: 15px;
}

.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category > ul > li > ul .accordion-open.accordion-open--current:after {
	top: 20px;
}

.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category > ul > li > ul li {
	position: relative;
	border-top: 1px solid #CCC;
}

.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category > ul > li > ul li label {
	display: block;
	padding: 10px 20px;
}

.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category > ul > li ul {
	height: 0;
	transition: all 0.3s ease;
	opacity: 0;
	overflow: hidden;
}

.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category > ul > li ul.accordion-open--current {
	height: auto;
	opacity: 1;
}

.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category > ul > li > ul li li label {
	padding-left: 50px;
}

.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category > ul > li > ul li li li label {
	padding-left: 80px;
}

/* filter setting */
/*
.narrowDownSearch .narrowDownSearch__filter.narrowDownSearch__filter--setting {
	width: 400px;
}
*/

.narrowDownSearch .narrowDownSearch__filter.narrowDownSearch__filter--setting .filter__head {
	padding-left: 53px;
}

.narrowDownSearch .narrowDownSearch__filter.narrowDownSearch__filter--setting .filter__head .head__text {
	display: block;
	font-size: 15px;
	font-weight: 700;
	text-overflow: ellipsis;
	overflow: hidden; 
	white-space: nowrap;
}

/* filter open */
.narrowDownSearch .narrowDownSearch__filter.narrowDownSearch__filter--open:after {
	margin-top: -3px;
}

.narrowDownSearch .narrowDownSearch__filter.narrowDownSearch__filter--open .filter__inner {
	visibility: visible;
	opacity: 1;
	z-index: 1;
}

.narrowDownSearch .narrowDownSearch__filter.narrowDownSearch__filter--open .filter__head {
	display: flex;
	align-items: center;
	background: #efefee;
	border-top-left-radius: 8px;
	border-top-right-radius: 8px;
	padding-left: 0;
	left: -2px;
	top: -2px;
	right: -2px;
	width: 580px;
	height: 70px;
}

.narrowDownSearch .narrowDownSearch__filter.narrowDownSearch__filter--open .filter__head .button__clear,
.narrowDownSearch .narrowDownSearch__filter.narrowDownSearch__filter--open .filter__head .button__search {
	pointer-events: auto;
	display: block;
}

.narrowDownSearch .narrowDownSearch__filter.narrowDownSearch__filter--open .filter__head .head__button {
	display: flex;
}

.narrowDownSearch .narrowDownSearch__filter.narrowDownSearch__filter--open .filter__head .head__title {
	padding-left: 77px;
	width: 247px;
	box-sizing: border-box;
}

/*-----------------------------------------
localPage
-----------------------------------------*/
.categoryModalWindow {
	transition: all 0.3s ease;
	visibility: hidden;
	opacity: 0;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(0,0,0,0.8);
	z-index: -1;
}

.categoryModalWindow.categoryModalWindow-open {
	visibility: visible;
	opacity: 1;
	z-index: 20;
}

.categoryModalWindow .categoryModalWindow__content {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: #FFF;
	border-radius: 8px;
	padding: 30px 30px 10px 30px;
}

.categoryModalWindow .content__head {
	position: relative;
}

.categoryModalWindow .content__head .head__title {
	font-weight: 700;
	margin-bottom: 15px;
	font-size: 16px;
	line-height: 150%;
}

.categoryModalWindow .content__head .head__close {
	display: block;
	position: absolute;
	top: -30px;
	right: -30px;
	width: 50px;
	height: 50px;
	cursor: pointer;
}

.categoryModalWindow .content__head .head__close:before,
.categoryModalWindow .content__head .head__close:after {
	position: absolute;
	display: block;
	background: #000;
	width: 18px;
	height: 2px;
	border-radius: 4px;
	content: "";
	pointer-events: none;
}

.categoryModalWindow .content__head .head__close:before {
	top: 50%;
	left: 17px;
}

.categoryModalWindow .content__head .head__close:before {
	transform: rotate(45deg);
}

.categoryModalWindow .content__head .head__close:after {
	top: 50%;
	left: 17px;
}

.categoryModalWindow .content__head .head__close:after {
	transform: rotate(-45deg);
}

.categoryModalWindow .content__body {
	width: 475px;
	line-height: 150%;
	padding-bottom: 20px;
}

.categoryModalWindow .content__body ul li {
	font-size: 15px;
	font-weight: 700;
}

.categoryModalWindow .content__body ul li ul {
	border-top: 1px solid #CCC;
	padding: 20px 0 0 30px;
}

.categoryModalWindow .content__body .body__item {
	display: none;
}

.categoryModalWindow .content__body .body__item ul li a {
	position: relative;
	display: block;
	text-decoration: none;
	padding: 10px 10px 10px 15px;
}

.categoryModalWindow .content__body .body__item > ul > li > a {
	margin-left: 10px;
	padding: 20px 0 20px 15px;
}

.categoryModalWindow .content__body .body__item ul li a:after {
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	margin: -4px 0 0 -1px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #858585;
	border-right: 2px solid #858585;
	box-sizing: border-box;
	content: '';
	transform: rotate(45deg);
}

.categoryModalWindow .content__body .body__item ul li a:hover {
	text-decoration: underline;
}

.categoryModalWindow .content__body .body__item ul li ul {
	display: flex;
	flex-wrap: wrap;
}

.categoryModalWindow .content__body .body__item ul li ul li {
	width: 50%;
}


/*-----------------------------------------
localPage
-----------------------------------------*/
.localPage__head {
	background: #FFF;
	margin-bottom: 50px;
	padding-top: 40px;
}

.localPage__head .head__category {
	display: inline-block;
	border: 1px solid #666666;
	margin-bottom: 25px;
	padding: 5px 13px;
	text-decoration: none;
	font-size: 16px;
}

.localPage__head .head__inner {
	width: 1150px;
	margin: 0 auto;
}

.localPage__head .head__title {
	margin-bottom: 20px;
	line-height: 133%;
	font-size: 32px;
	font-weight: 700;
	color: #6A2F00;
}

.localPage__head .head__title:last-child {
	margin-bottom: 0;
}

.localPage__head .head__title--relative {
	position: relative;
}

.localPage__head .spacer {
	display: inline-block;
	width: 0.5em;
}

.localPage__head .head__figure {
	display: block;
	margin: 30px 0 25px 0;
}

.localPage__head .head__figure:last-child {
	margin-bottom: 0;
}

.localPage__head .head__figure img {
	width: 100%;
}

.localPage__head .head__update {
	font-size: 14px;
}

.localPage__head .head__update strong {
	font-size: 16px;
}

.localPage__special .title01 {
	margin-bottom: 20px;
}

.localPage__special ul {
	display: flex;
	flex-wrap: wrap;
}

.localPage__special.localPage__special--column3 ul li {
	width: 31%;
	margin: 30px 3.5% 0 0;
}

.localPage__special.localPage__special--column2 ul li {
	width: 48%;
	margin: 30px 4% 0 0;
}

.localPage__special.localPage__special--column2.localPage__special--radius ul li {
	width: 48.7%;
	margin: 20px 2.6% 0 0;
}

.localPage__special.localPage__special--column2 ul li:nth-child(1),
.localPage__special.localPage__special--column2 ul li:nth-child(2),
.localPage__special.localPage__special--column3 ul li:nth-child(1),
.localPage__special.localPage__special--column3 ul li:nth-child(2),
.localPage__special.localPage__special--column3 ul li:nth-child(3) {
	margin-top: 0;
}

.localPage__special ul li a {
	display: block;
	text-decoration: none;
}

.localPage__special--radius ul li a {
	background: #FFF;
	height: 100%;
	border-radius: 8px;
}

.localPage__special.localPage__special--column2 ul li:nth-child(2n) {
	margin-right: 0;
}

.localPage__special.localPage__special--column3 ul li:nth-child(3n) {
	margin-right: 0;
}

.localPage__special ul li .item__figure {
	position: relative;
	display: block;
	margin-bottom: 10px;
}

.localPage__special ul li .item__figure:before {
	display: block;
	content: '';
	/*padding-top : 65%;*/
	padding-top : 58.6%;
}

.localPage__special ul li .item__figure img {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 8px;
	border: 1px solid #C4C4C4;
	box-sizing: border-box;
}

.localPage__special--radius ul li .item__figure img {
	-webkit-border-top-left-radius: 8px;
	-webkit-border-top-right-radius: 8px;
	-moz-border-radius-topleft: 8px;
	-moz-border-radius-topright: 8px;
	border-top-left-radius: 8px;
	border-top-right-radius: 8px;
}

.localPage__special--radius ul li a .item__description {
	display: block;
	padding: 5px 15px 35px 15px;
}

.localPage__special--radius ul li .item__category {
	display: block;
	font-weight: 700;
	color: #999;
	font-size: 14px;
}

.localPage__special ul li .item__title {
	display: block;
	font-weight: 700;
}

.localPage__special ul li .item__text {
	display: block;
}


/*-----------------------------------------
localPage__city
-----------------------------------------*/
.localPage__city {
	margin-top: -20px;
	padding-top: 10px;
	border-top: 1px solid #CCC;
}

.localPage__city dl {
	padding-top: 20px;
}

.localPage__city dt {
	margin-top: 20px;
	font-size: 18px;
	font-weight: 700;
}

.localPage__city ul li {
	display: inline-block;
	margin: 20px 30px 0 0;
	line-height: 130%;
	font-weight: normal;
	font-size: 18px;
}

.localPage__city ul li:last-child {
	margin-right: 0;
}

.localPage__city dd ul li {
	margin-right: 20px;
}

.localPage__city ul li a {
	position: relative;
	padding-left: 15px;
	text-decoration: none;
}

.localPage__city dd ul li a {
	padding-left: 12px;
}

.localPage__city ul li a:after {
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	margin: -4px 0 0 -1px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #858585;
	border-right: 2px solid #858585;
	box-sizing: border-box;
	content: '';
	transform: rotate(45deg);
}

.localPage__city ul li a:hover {
	text-decoration: underline;
}

/*-----------------------------------------
localPage__info
-----------------------------------------*/
.localPage__info:after {
	content: '';
	clear: both;
	display: block;
}

.localPage__info .info__description {
	width: 410px;
	float: left;
}

.localPage__info .info__map {
	width: 360px;
	float: right;
}

/*-----------------------------------------
simContent
-----------------------------------------*/
.simContent .simContent__selectbox:after {
	content: '';
	clear: both;
	display: block;
}

.simContent .simContent__selectbox .selectbox__item {
	width: 50%;
	float: left;
}

.simContent .simContent__selectbox .selectbox__item:last-child {
	text-align: right;
}

.simContent .simContent__selectbox .selectbox__item label {
	margin-right: 12px;
	line-height: 58px;
	vertical-align: top;
	font-size: 18px;
}

.simContent .simContent__selectbox .selectbox__item select {
	width: 325px;
	vertical-align: top;
	text-align: left;
}

.simContent .simContent__button {
	margin: 50px auto 0 auto;
	text-align: center;
}

.simContent .simContent__price {
	display: none;
	background: #efefee;
	margin-top: 50px;
	padding: 30px;
	text-align: center;
	font-weight: 700;
	font-size: 20px;
}

.simContent .simContent__price .price__yen {
	font-weight: 700;
	font-size: 36px;
	color: #c7000a;
}

.simContent .simContent__price .price__yen .price__unit {
	font-size: 24px;
	color: #000;
}

.simContent .simContent__note {
	margin-top: 75px;
	line-height: 142%;
	font-size: 14px;
}


/*-----------------------------------------
categoryReturnList
-----------------------------------------*/
/*
.categoryReturnList {
	background: #efefee;
	padding: 30px 50px;
}

.categoryReturnList ul {
	margin-top: -20px;
}

.categoryReturnList ul li {
	position: relative;
	display: inline-block;
	margin: 15px 20px 0 0;
	line-height: 130%;
	font-weight: normal;
	font-size: 16px;
}

.categoryReturnList ul li a {
	text-decoration: none;
	padding-left: 13px;
}

.categoryReturnList ul li a:hover {
	text-decoration: underline;
}

.categoryReturnList ul li:after {
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	margin: -4px 0 0 -1px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #858585;
	border-right: 2px solid #858585;
	box-sizing: border-box;
	content: '';
	transform: rotate(45deg);
}
*/
/*-----------------------------------------
icon
-----------------------------------------*/
.decoration--3lines {
	position: absolute;
	background-image: url(../images/common/bg_pagetitle_ranking.png);
	background-size: cover;
	background-position: 0 0;
	background-repeat: no-repeat;
	left: 100%;
	bottom: 100%;
	width: 43px;
	height: 44px;
}

.decoration--3lines02 {
	position: absolute;
	background-image: url(../images/common/bg_pagetitle_ranking02.png);
	background-size: cover;
	background-position: 0 0;
	background-repeat: no-repeat;
	left: 100%;
	top: -25px;
	width: 29px;
	height: 37px;
}

.icon {
	display: inline-block;
	background-repeat: no-repeat;
	background-position: 0 0;
	padding-left: 1.9em;
	/*width: 1.32em;*/
	width: 0;
	height: 1.3em;
	vertical-align: top;
}

.icon--special {
	background-image: url(../images/common/icon_pen.svg);
	background-size: contain;
	height: 1.7em;
	background-position: -0.25em 0;
	margin-top: -0.1em;
	margin-bottom: -0.4em;
}

.icon--present {
	background-image: url(../images/common/icon_present.svg);
	background-size: 1.39em 1.39em;
	background-position: 0 0;
	height: 1.39em;
	margin-top: -0.1em;
	margin-bottom: -0.39em;
}

.icon--category {
	background-image: url(../images/common/icon_category.svg);
	background-size: 1.45em 1.15em;
	height: 1.15em;
	background-position: 0 0;
}

.icon--samecategory {
	background-image: url(../images/common/icon_samecategory.png);
	background-size: 1em 1em;
	background-position: 0.05em 0.1em;
}

.icon--ranking {
	background-image: url(../images/common/icon_ranking03.svg);
	background-size: 1.6em 1.92em;
	height: 1.92em;
	background-position: 0 0;
	margin-top: -0.7em;
	margin-bottom: -0.92em;
}

.icon--donation {
	background-image: url(../images/common/icon_donation.svg);
	background-size: 1.42em 2.03em;
	height: 2.03em;
	background-position: 0 0;
	margin-top: -0.7em;
	margin-bottom: -1.03em;
}

.icon--new {
	background-image: url(../images/common/icon_new.svg);
	background-size: 1.2em 1.2em;
}

.icon--campaign {
	background-image: url(../images/common/icon_campaign.png);
	background-size: 1.1em 0.9em;
	background-position: 0 0.1em;
}

.icon--compare {
	background-image: url(../images/common/icon_compare.svg);
	background-size: 1.82em 1.5em;
	height: 1.5em;
	background-position: 0 0;
	margin-top: -0.3em;
	margin-bottom: -0.5em;
}

.icon--simulator {
	background-image: url(../images/common/icon_simulator.svg);
	background-size: 1.25em 1.71em;
	height: 1.71em;
	background-position: 0.17em 0;
	margin-top: -0.3em;
	margin-bottom: -0.71em;
}

.icon--star {
	background-image: url(../images/common/icon_star.svg);
	background-size: 0.92em 0.92em;
	background-position: 0.14em 0.14em;
}

.icon--star02 {
	background-image: url(../images/common/icon_star02.png);
	background-size: 1.6em 1.86em;
	height: 1.86em;
	background-position: 0 0;
	margin-top: -0.6em;
	margin-bottom: -0.86em;
}

.icon--building {
	background-image: url(../images/common/icon_building.svg);
	background-size: 1.7em 1.5em;
	background-position: 0 0;
	height: 1.5em;
	margin-top: -0.1em;
	margin-bottom: -0.5em;
}

.icon--mountain {
	background-image: url(../images/common/icon_mountain.png);
	background-size: 1.42em 0.5em;
	background-position: 0 0.28em;
	width: 1.67em;
}

.icon--faq {
	background-image: url(../images/common/icon_faq.png);
	background-size: 1.1em 1em;
	background-position: 0 0.15em;
}

.icon--tag {
	background-image: url(../images/common/icon_tag.svg);
	background-size: 1em 1em;
	background-position: 0.5em 0.1em;
}

.icon--info {
	background-image: url(../images/common/icon_info.svg);
	background-size: 1.3em 1.3em;
	background-position: 0 0;
	height: 1.3em;
	margin-bottom: -0.3em;
}

.icon--check {
	background-image: url(../images/common/icon_check.svg);
	background-size: 1.32em 1.39em;
	background-position: 0 0;
	height: 1.39em;
	margin-bottom: -0.09em;
}

.icon--book {
	background-image: url(../images/common/icon_book.png);
	background-size: 1.16em 0.83em;
	background-position: 0 0.35em;
}

.icon--portalsite {
	background-image: url(../images/common/icon_portalsite.svg);
	background-size: 1.4em 1.4em;
	background-position: 0 0;
	height: 1.4em;
	margin-top: -0.1em;
	margin-bottom: -0.4em;
}

.icon--people {
	background-image: url(../images/common/icon_people.svg);
	background-size: 1.57em 1.21em;
	height: 1.21em;
	background-position: 0 0;
	margin-top: -0.15em;
	margin-bottom: -0.21em;
}

.icon--boosting {
	background-image: url(../images/common/icon_boosting.svg);
	background-size: 1.28em 1.46em;
	height: 1.46em;
	background-position: 0 0;
	margin-top: -0.16em;
}

.icon--category--ranking {
	display: inline-block;
	background-repeat: no-repeat;
	margin-right: 10px;
	background-position: 0 0;
	background-size: contain;
	vertical-align: middle;
}

.icon--category--ranking--meat {
	background-image: url(../images/common/icon_category_meat.png);
	width: 3.1em;
	height: 2.1em;
}

.icon--category--ranking--rice {
	background-image: url(../images/common/icon_category_rice.png);
	width: 1.9em;
	height: 1.9em;
}

.icon--category--ranking--fruit {
	background-image: url(../images/common/icon_category_fruit.png);
	width: 2em;
	height: 1.8em;
}

.icon--category--ranking--vegetable {
	background-image: url(../images/common/icon_category_vegetable.png);
	width: 46px;
	height: 36px;
}

.icon--category--ranking--seafood {
	background-image: url(../images/common/icon_category_seafood.png);
	width: 2.75em;
	height: 2em;
}

.icon--category--ranking--drink {
	background-image: url(../images/common/icon_category_drink.png);
	width: 1.5em;
	height: 2em;
}

.icon--category--ranking--appliances {
	background-image: url(../images/common/icon_category_appliances.png);
	width: 2.1em;
	height: 1.875em;
}

.icon--category--ranking--processed {
	background-image: url(../images/common/icon_category_processed.png);
	width: 2.25em;
	height: 1.8em;
}

.nav__head--small .icon--faq {
	background-position: 0 0.3em;
}

.icon--calendar {
	background-image: url(../images/common/icon_calendar.svg);
	background-size: 1.4em 1.4em;
	padding-left: 1.7em;
	height: 1.4em;
	background-position: 0 0;
}


.icon_external {
	position: relative;
	display: inline-block;
	margin-left: 14px;
	margin-top: 0.2em;
	vertical-align: top;
	width: 14px;
}

.icon_external:before,
.icon_external:after {
	position: absolute;
	display: block;
	border: 2px solid #999;
	width: 14px;
	height: 13px;
	box-sizing: border-box;
	background: #FFF;
	content: '';
}

.icon_external:before {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	box-shadow: -1px 1px 0px 0px rgba(255,255,255,1);
}

.icon_external:after {
	position: absolute;
	top: 4px;
	left: -4px;
	z-index: 1;
}

.icon_external.icon_external--small {
	position: relative;
	display: inline-block;
	margin-left: 13px;
	margin-top: 0.3em;
	vertical-align: top;
	width: 11px;
}

.icon_external.icon_external--small:before,
.icon_external.icon_external--small:after {
	border: 1px solid #999;
	width: 11px;
	height: 10px;
}

.icon_external.icon_external--small:after {
	top: 3px;
	left: -3px;
}

.button01--primary .icon_external:before,
.button01--primary .icon_external:after {
	background: #c7000a;
	border-color: #fff!important;
	box-shadow: none;
}

.button01--default .icon_external:before,
.button01--default .icon_external:after {
	background: #c7000a;
	border-color: #fff!important;
	box-shadow: none;
}

/*-----------------------------------------
title
-----------------------------------------*/
.title01 {
	display: flex;
	line-height: 130%;
	margin-bottom: 40px;
	font-size: 28px;
	font-weight: 700;
	color: #6A2F00;
}

.title01 a {
	display: flex;
}

.title01--margin01 {
	margin-bottom: 30px;
}

.title02 {
	display: flex;
	line-height: 130%;
	margin-bottom: 40px;
	font-size: 20px;
	font-weight: 700;
	color: #6A2F00;
}

.title02--margin01 {
	margin-bottom: 20px;
}

.title03 {
	line-height: 130%;
	margin-bottom: 35px;
	font-size: 18px;
	font-weight: 700;
	color: #6A2F00;
}

.title04 {
	line-height: 130%;
	margin-bottom: 15px;
	font-size: 16px;
	font-weight: 700;
	color: #6A2F00;
}

.title05 {
	display: flex;
	line-height: 130%;
	margin-bottom: 40px;
	font-size: 24px;
	font-weight: 700;
	color: #6A2F00;
}

.title06 {
	display: flex;
	line-height: 130%;
	margin-bottom: 40px;
	font-size: 28px;
	font-weight: 700;
	color: #6A2F00;
}

.title07 {
	display: flex;
	line-height: 130%;
	margin-bottom: 40px;
	font-size: 23px;
	font-weight: 700;
	color: #6A2F00;
}

.title08 {
	margin-bottom: 10px!important;
	line-height: 130%;
	font-size: 13px;
	font-weight: 700;
	color: #C7000A;
}

/*-----------------------------------------
note
-----------------------------------------*/
.note01 {
	margin-top: 20px;
	line-height: 130%;
	font-size: 12px;
}

/*-----------------------------------------
button
-----------------------------------------*/
.button01 {
	display: inline-block;
	background: #FFF;
	transition: all 0.3s ease;
	border-radius: 8px;
	box-sizing: border-box;
	width: 400px;
	padding: 15px;
	font-size: 16px;
	font-weight: 700;
	text-decoration: none;
	text-align: center;
}

.button01.button01--default {
	background: #C4121A;
	box-shadow: 3px 3px 3px 0px rgba(0, 0, 0, 0.15);
	color: #FFF;
}

.button01.button01--category--ranking {
	position: relative;
}

.button01.button01--primary {
	background: #c7000a;
	color: #FFF;
}

.button01.button01--secondary {
	border: 2px solid #000;
	color: #000;
}

.button01.button01--default:hover {
	background: #D02E35;
	color: #FFF;
}

.button01.button01--sim {
	background: #c7000a;
	box-shadow: 3px 3px 3px 0px rgba(0, 0, 0, 0.15);
	width: 260px;
	font-size: 18px;
	font-weight: 700;
	color: #FFF;
}

.button01.button01--more {
	position: relative;
	border: 1px solid #CCC;
}

.button01.button01--more:after {
	display: block;
	position: absolute;
	top: 50%;
	right: 16px;
	margin: -4px 0 0 0;
	width: 8px;
	height: 8px;
	border-bottom: 2px solid #000;
	border-right: 2px solid #000;
	box-sizing: border-box;
	content: '';
	transform: rotate(45deg);
}

.button01.button01--more.button01--close:after {
	transform: rotate(-135deg);
}

.button01.button01--small {
	padding: 10px;
	width: 100%;
}

.button01--default .button01--text-small {
	margin-left: 5px;
	font-size: 10px;
}

.viewall {
	margin-top: 40px;
	text-align: center;
}

.viewall--side {
	margin-top: 20px;
}

/*-----------------------------------------
localPage
-----------------------------------------*/
.localPage__special {
	margin-top: 50px;
}

#feature .localPage__special {
	margin-top: 0;
}

.localPage__return {
	margin-top: 80px;
}

/*-----------------------------------------
detailPage
-----------------------------------------*/
.detailPage {
	padding-top: 60px;
}

.detailPage__mv {
	margin-bottom: 30px;
	text-align: center;
}

.detailPage__mv img {
	max-width: 100%;
}

.detailPage__link__source {
	margin-bottom: 20px;
	color: #828282;
	font-size: 14px;
	text-align: right;
}

.detailPage__head .head__category {
	display: block;
	margin-bottom: 5px;
	color: #858585;
	font-size: 16px;
	font-weight: 700;
}

.detailPage__head .head__title {
	display: block;
	margin-bottom: 5px;
	font-size: 24px;
	font-weight: 700;
}

.detailPage__head .head__source {
	margin-bottom: 20px;
	font-size: 14px;
	color: #858585;
}

.detailPage__head .head__price {
	margin-bottom: 30px;
	font-size: 25px;
	font-weight: 700;
	color: #C4121A;
}

.detailPage__head .head__unit {
	font-size: 15px;
}

.detailPage__head .head__info {
	margin-top: 40px;
	margin-bottom: 30px;
}

.detailPage__head .head__info .info__price {
	font-size: 20px;
	font-weight: 700;
	float: right;
}

.detailPage__head .head__info .info__link .icon {
	padding-left: 1.75em;
}

.detailPage__head .head__info .info__link .icon--building {
	background-size: 1.12em 0.93em;
	background-position: 0 0;
	margin-top: 0.3em;
}

.detailPage__head .head__info .info__link .icon--category {
	background-size: 1.12em 0.93em;
	background-position: 0 0;
	margin-top: 0.2em;
}

.detailPage__head .head__info .info__link .link__pref {
	display: inline-block;
	margin-right: 20px;
	font-size: 16px;
}

.detailPage__head .head__info .info__link .link__pref a {
	color: #828282;
}

.detailPage__head .head__info .info__link .link__topicPath {
	display: inline-block;
	font-size: 0;
}

.detailPage__head .head__info .info__link .link__topicPath ol li {
	display: inline-block;
	line-height: 135%;
	font-size: 16px;
	color: #828282;
}

.detailPage__head .head__info .info__link .link__topicPath ol li a {
	display: block;
	position: relative;
	margin-right: 0.2em;
	padding-right: 1em;
	color: #828282;
}

.detailPage__head .head__info .info__link .link__topicPath ol li a:hover {
	text-decoration: none;
}

.detailPage__head .head__info .info__link .link__topicPath ol li:last-child a:after {
	display: none;
}
.detailPage__head .head__info .info__link .link__topicPath ol li a:after {
	position: absolute;
	top: 50%;
	right: 0;
	content: '>';
	margin-top: -0.8em;
}


.detailPage__head .head__info .info__link .link__source {
	float: right;
	color: #828282;
	font-size: 14px;
}

.link__tag {
	clear: both;
	display: flex;
	padding-top: 20px;
}

.link__tag .icon--tag {
	background-position: 0.2em 0;
	margin-top: 0.2em;
}

.detailPage__update {
	margin-top: 40px;
}

.detailPage__update .update__title {
	font-size: 15px;
	margin-bottom: 20px;
	padding: 7px 10px;
	border: 1px solid #999999;
	text-align: center;
	color: #828282;
}

.detailPage__update .update__title a {
	color: #828282;
}

.detailPage__update .update__title span {
	margin-left: 10px;
}

.detailPage__update ul {
	display: flex;
	flex-wrap: wrap;
	font-size: 0;
}

.detailPage__update ul li {
	display: flex;
	flex-direction: column;
	border-bottom: 1px solid #CCC;
	width: 47.5%;
	vertical-align: top;
	margin: 30px 5% 0 0;
	padding-bottom: 19px;
}

.detailPage__update ul li:nth-child(1),
.detailPage__update ul li:nth-child(2) {
	margin-top: 0;
}

.detailPage__update ul li:nth-child(2n) {
	margin-right: 0;
}

.detailPage__update ul li .item__title {
	margin-bottom: 5px;
	font-size: 16px;
	font-weight: 700;
}

.detailPage__update ul li .item__price {
	margin-bottom: 20px;
	font-size: 18px;
	font-weight: 700;
}

.detailPage__update ul li .item__price .price__unit {
	font-size: 18px;
}

.detailPage__update ul li .item__description {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: auto;
}

.detailPage__update ul li .item__description .description__site .site__note {
	margin-bottom: 5px;
	line-height: 142%;
	font-size: 14px;
	font-weight: 700;
	color: #cc0000;
}

.detailPage__update ul li .item__description .description__site .site__logo {
	display: table;
}

.detailPage__update ul li .item__description .description__site .site__logo .logo_img {
	display: table-cell;
	vertical-align: middle;
	padding-right: 8px;
}

.detailPage__update ul li .item__description .description__site .site__logo .logo_img img {
	width: 27px;
}

.detailPage__update ul li .item__description .description__site .site__logo .logo_text {
	display: table-cell;
	font-size: 16px;
	font-weight: 700;
	vertical-align: middle;
}

.detailPage__update ul li .item__description .description__button {
	min-width: 170px;
	flex-shrink: 0;
}

.detailPage__update ul li .item__description .description__button a {
	display: block;
	background: #FFF;
	border: 1px solid #000;
	box-sizing: border-box;
	padding: 5px 15px;
	border-radius: 6px;
	font-size: 15px;
	font-weight: 700;
	text-decoration: none;
	text-align: center;
	color: #000;
}

.detailPage__update ul li .item__description .description__button a .icon_external:before,
.detailPage__update ul li .item__description .description__button a .icon_external:after {
	border-color: #000;
	border-width: 1px;
	background: #FFF;
}

.detailPage__update ul li .item__description .description__button a .icon_external:before {
	box-shadow: -1px 1px 0px 0px rgba(255,255,255,1);
}

.detailPortalList ul {
	display: flex;
	justify-content: space-between;
}

.detailPortalList ul li {
	width: 47%;
}

.detailPortalList ul li a {
	display: block;
	height: 100%;
	text-decoration: none;
	border: 1px solid #C7000A;
	border-radius: 9px;
	box-sizing: border-box;
	padding: 4px 10px;
	background: url(../images/common/icon_blank.svg) no-repeat right 14px top 50%;
}

.detailPortalList ul li a .detailPortalList__logo {
	display: flex;
	margin-bottom: 7px;
	align-items: center;
	font-size: 15px;
	font-weight: 700;
}

.detailPortalList ul li a .detailPortalList__logo_img {
	width: 27px;
}

.detailPortalList ul li a .detailPortalList__logo_img img {
	width: 100%;
}

.detailPortalList__logo_text {
	margin-left: 5px;
	flex: 1;
}

.detailPortalList ul li a .detailPortalList__description {
	display: flex;
	align-items: end;
}

.detailPortalList ul li a .detailPortalList__description .detailPortalList__description_title {
	flex: 1;
	font-size: 13px;
	font-weight: 700;
	line-height: 153%;
}

.detailPortalList ul li a .detailPortalList__description .detailPortalList__description_price {
	font-size: 14px;
	font-weight: 700;
}


#contents .lgPageTitle {
	margin-bottom: 28px;
	font-weight: 700;
	color: #6A2F00;
}

#contents .lgPageTitle .lgPageTitle__icon span {
	display: inline-block;
	vertical-align: middle;
	margin-bottom: 7px;
	margin-right: 7px;
	padding: 7px 12px;
	line-height: 100%;
	font-size: 13px;
	border-radius: 6px;
	background: #B80009;
	letter-spacing: -0.05em;
	text-align: center;
	color: #FFF;
}

#contents .lgPageTitle .lgPageTitle__lead {
	font-size: 22px;
}

#contents .lgPageTitle .lgPageTitle__heading {
	font-size: 32px;
	font-weight: 700;
	line-height: 140%;
	text-align: left;
}

#contents .lgPageTitle .lgPageTitle__heading span {
	font-size: 28px;
}

#contents .swiperArticleList__items {
	display: flex;
	position: relative;
	gap: 14px;
}

#contents .swiperArticleList a {
	display: block;
	text-decoration: none;
}

#contents .swiperArticleList a .swiperArticleList__figure {
	display: block;
	margin-bottom: 20px;
}

#contents .swiperArticleList a .swiperArticleList__description {
	display: block;
}

#contents .swiperArticleList a .swiperArticleList__description .description__source {
	display: block;
	margin-bottom: 5px;
	font-size: 15px;
	font-weight: 700;
	line-height: 153%;
	color: #858585;
}

#contents .swiperArticleList a .swiperArticleList__description .description__title {
	display: block;
	font-size: 16px;
	font-weight: 700;
	line-height: 143%;
	color: #000;
}

#contents .swiperArticleList .swiperArticleList__figure {
	position: relative;
}

#contents .swiperArticleList .swiperArticleList__figure:after {
	display: block;
	content: '';
	padding-top: 56.2737%;
}

#contents .swiperArticleList .swiperArticleList__figure img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#contents .knowledgeList ul {
	display: flex;
	gap: 0 28px;
}

#contents .knowledgeList ul li img {
	max-width: 100%;
}

/*-----------------------------------------
paging
-----------------------------------------*/
.paging {
	margin-top: 70px;
	font-size: 0;
	text-align: center;
}

.paging a {
	display: block;
	border: 1px solid #C4121A;
	border-radius: 4px;
	background: #FFF;
	box-sizing: border-box;
	height: 40px;
	line-height: 40px;
	text-decoration: none;
	color: #000;
	font-size: 15px;
	font-weight: 700;
	transition: all 0.3s ease;
}

#feature .paging a {
	border: none;
}

.paging a.current,
.paging a:hover {
	background: #C4121A;
	color: #FFF;
}

.paging .paging__prev {
	display: inline-block;
}

.paging .paging__prev a {
	position: relative;
	padding: 0 20px 0 30px;
}

.paging .paging__prev a:after,
.paging .paging__next a:after {
	display: block;
	position: absolute;
	top: 50%;
	margin-top: -3px;
	width: 7px;
	height: 7px;
	content: '';
}

.paging .paging__prev a:after {
	left: 16px;
	border-top: 2px solid #858585;
	border-left: 2px solid #858585;
	transform: rotate(-45deg);
}

.paging .paging__numbering {
	display: inline-block;
	margin: 0 10px;
}

.paging .paging__numbering li {
	display: inline-block;
	margin: 0 10px 0 0;
}

.paging .paging__numbering li:last-child {
	margin-right: 0;
}

.paging .paging__numbering li a {
	width: 40px;
}

.paging .paging__next {
	display: inline-block;
}

.paging .paging__next a {
	position: relative;
	padding: 0 30px 0 20px;
}

.paging .paging__next a:after {
	right: 16px;
	border-top: 2px solid #858585;
	border-right: 2px solid #858585;
	transform: rotate(45deg);
}

.paging .paging_found {
	margin-top: 15px;
	font-size: 14px;
}

/*-----------------------------------------
localNav
-----------------------------------------*/
.localNav {
	background: #efefee;
	margin: 0 auto;
	padding: 30px 50px;
	box-sizing: border-box;
}

.localNav--block {
	display: inline-block;
	margin-top: 25px;
	padding: 20px;
}

.localNav .title02 {
	margin-bottom: 20px;
}

.localNav ul li {
	display: inline-block;
	margin: 10px 15px 0 0;
	line-height: 130%;
	font-size: 15px;
}

.localNav--bothBlock ul li,
.localNav--bothBlock ul li a {
	display: block;
}

.localNav--block ul li {
	display: block;
	font-size: 18px;
}

.localNav--block ul li:first-child {
	margin-top: 0;
}

.localNav ul li a {
	position: relative;
	padding-left: 10px;
	text-decoration: none;
}

.localNav--block ul li a {
	padding-left: 15px;
}

.localNav ul li a:after {
	display: block;
	position: absolute;
	top: 0.4em;
	left: 0;
	margin: 0 0 0 -1px;
	width: 6px;
	height: 6px;
	border-top: 1px solid #858585;
	border-right: 1px solid #858585;
	box-sizing: border-box;
	content: '';
	transform: rotate(45deg);
}

.localNav ul li a:hover {
	text-decoration: underline;
}

.localNav .viewall {
	margin-top: 30px;
}

/*-----------------------------------------
footer
-----------------------------------------*/
footer .footer__inner {
	position: relative;
	width: 1150px;
	margin: 0 auto 0 auto;
}

footer .footer__inner .footer__about {
	padding: 30px 0 0 0;
}

footer .footer__inner .footer__about dt {
	margin-bottom: 10px;
	font-size: 18px;
	font-weight: 700;
}

footer .footer__inner .footer__about dd {
	font-size: 16px;
}

footer .footer__inner .footer__about dd .footer__about-note {
	margin-top: 1em;
	font-size: 14px;
}

footer .footer__sitemaps {
	margin-top: 36px;
	border-top: 1px solid #C1C1C1;
}

footer .sitemaps__navigation {
	padding: 50px 0;
}

footer .sitemaps__navigation:after {
	display: block;
	clear: both;
	content: '';
}

footer .sitemaps__navigation > ul {
	float: left;
}

footer .sitemaps__navigation > ul:nth-child(1) {
	width: 407px;
}

footer .sitemaps__navigation > ul:nth-child(1) ul {
	float: left;
	margin-top: 15px;
	margin-left: 0;
	width: 50%;
}

footer .sitemaps__navigation > ul:nth-child(2) {
	width: 475px;
}

footer .sitemaps__navigation > ul:nth-child(2) ul {
	float: left;
	margin-top: 15px;
	margin-left: 0;
	width: 105px;
}

footer .sitemaps__navigation > ul > li {
	margin-bottom: 5px;
}

footer .sitemaps__navigation > ul > li > ul {
	margin-left: 15px;
}

footer .sitemaps__navigation ul li a {
	display: block;
	position: relative;
	padding-left: 15px;
	text-decoration: none;
	font-size: 16px;
}

footer .sitemaps__navigation ul li li a {
	font-size: 14px;
}

footer .sitemaps__navigation ul li a:after {
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -3px;
	width: 7px;
	height: 7px;
	border-top: 2px solid #858585;
	border-right: 2px solid #858585;
	content: '';
	transform: rotate(45deg);
}

footer .footer__copyright {
	display: block;
	min-width: 1150px;
	border-top: 1px solid #cccccc;
	padding: 15px 0 20px 0;
	font-size: 14px;
	text-align: center;
}

/*-----------------------------------------
pageTop
-----------------------------------------*/
.pageTop {
	width: 1150px;
	padding-top: 70px;
	margin: 0 auto;
	text-align: right;
}

.pageTop a {
	position: relative;
	display: block;
	border: 1px solid #000;
	background-color: #FFF;
	width: 50px;
	height: 50px;
	margin-left: auto;
	transition: all 0.3s ease;
}

.pageTop a:after {
	position: absolute;
	top: 50%;
	left: 50%;
	border-top: 2px solid #000;
	border-right: 2px solid #000;
	width: 10px;
	height: 10px;
	box-sizing: border-box;
	content: '';
	transform: rotate(-45deg);
	margin: -3px 0 0 -5px;
}

.pageTop a:hover {
	opacity: 0.5;
}


/*-----------------------------------------
termlist_expanded
-----------------------------------------*/
.termlist_expanded {
	border-bottom: 1px solid #cccccc;
	margin-top: 20px;
}

.termlist_expanded dt {
	border-top: 1px solid #cccccc;
	float: left;
	padding: 20px 0 20px 0;
}

.termlist_expanded--input dt {
	padding-top: 30px;
}

.termlist_expanded dd {
	border-top: 1px solid #cccccc;
	padding: 20px 0 20px 250px;
}

.termlist_expanded dd input[type="text"] {
	width: 100%;
}

.termlist_expanded .termlist-description input[type="text"] {
	width: 47%;
}

.termlist_expanded ::placeholder {
	font-weight: normal;
}

.termlist_expanded input[type="text"],
.termlist_expanded textarea {
	border-radius: 5px;
	padding: 10px;
}

.text_important {
	color: #FF3300;
}

.termlist_expanded .text_note {
	display: block;
	line-height: 120%;
	margin-top: 10px;
}

.termlist_expanded .text_error {
	display: block;
	color: #FF3300;
	line-height: 120%;
}

/*-----------------------------------------
contact-attention
-----------------------------------------*/
.contact-attention {
	border: 1px solid #CC0000;
	line-height: 200%;
	margin-top: 30px;
	padding: 20px;
	text-align: center;
}


/*-----------------------------------------
privacyPolicy
-----------------------------------------*/
.privacyPolicy {
	margin: 40px 0 0 0;
	text-align: center;
}

.privacyPolicy .privacyPolicyInner {
	border: 1px solid #cccccc;
	margin-top: 20px;
	padding: 20px;
	text-align: left;
	height: 300px;
	overflow: auto;
	font-size: 15px;
}

.privacyPolicy .privacyPolicyInner p {
	margin-bottom: 1em;
}

.privacyPolicy .privacyPolicyInner h2 {
	margin-bottom: 1em;
	font-weight: 700;
}

.privacyPolicy .privacyPolicyInner h3 {
	font-weight: 700;
}

/*-----------------------------------------
portalIAMDescription
-----------------------------------------*/
.portalIAMDescription {
	border: 1px solid #B42B26;
	border-radius: 10px;
	margin-top: 30px;
	padding: 30px;
}


/*-----------------------------------------
tokusetsuBanner
-----------------------------------------*/
#contents .tokusetsuBanner img {
	width: 100%;
}


@media all and (max-width: 1206px){
	/*-----------------------------------------
	header
	-----------------------------------------*/
	#header .header__inner {
		padding: 0;
	}
}


@media all and (max-width: 750px){
	body {
		line-height: 135%;
		font-size: 30px;
	}

	.pc-only {
		display: none!important;
	}

	.sp-only {
		display: block;
	}

	span.sp-only {
		display: inline-block;
	}

	.spWidthMax {
		margin-left: -40px;
		margin-right: -40px;
	}

	.common-banner {
		right: auto;
		bottom: auto;
		top: 30px;
		left: 50px;
		right: 50px;
	}

	.common-banner .common-banner-close img {
		width: 60px;
	}

	.common-banner .common-banner-image img {
		width: 100%;
	}

	/*-----------------------------------------
	loader
	-----------------------------------------*/
	.loader {
		border-width: 4px;
	}

	/*-----------------------------------------
	input
	-----------------------------------------*/
	select {
		background: url(../images/common/icon_selectbox.png) no-repeat right 26px top 50%;
		background-size: 24px 14px;
		border-width: 4px;
		border-radius: 12px;
		height: 100px;
		padding: 0 80px 0 30px;
		box-sizing: border-box;
		font-size: 30px;
	}

	input[type="text"],
	textarea {
		border-width: 2px;
		padding: 25px 20px;
		line-height: 100%;
		font-size: 38px;
	}

	textarea {
		height: 10em;
	}

	::placeholder {
		font-size: 26px;
	}

	input[type="radio"] + span {
		padding: 0.1em 0 0 48px;
		min-height: 36px;
		line-height: 100%;
		font-weight: normal;
	}

	input[type="radio"] + span:before {
		width: 36px;
		height: 36px;
		border-width: 2px;
		border-radius: 18px;
	}

	input[type="radio"]:checked + span:after {
		top: 7px;
		left: 7px;
		width: 22px;
		height: 22px;
		border-radius: 12px;
	}

	input[type="checkbox"] + span {
		padding: 0.1em 0 0 48px;
		min-height: 36px;
		line-height: 100%;
		font-weight: normal;
	}

	input[type="checkbox"] + span:before {
		width: 36px;
		height: 36px;
		border-width: 2px;
	}

	input[type="checkbox"] + span:after {
		position: absolute;
		top: 4px;
		left: 10px;
		display: block;
		content: '';
		transform : scaleX(0) scaleY(0) rotate(45deg);
		border-width: 4px;
		width: 14px;
		height: 20px;
	}

	input[type="checkbox"]:checked + span:after {
		transform : scaleX(1) scaleY(1) rotate(45deg);
	}

	/*-----------------------------------------
	header
	-----------------------------------------*/
	#header {
		position: static;
		background: #efefef;
		min-width: auto;
	}

	#header.header--open {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		height: 100%;
		z-index: 12;
		overflow: auto;
	}

	#header .header__inner {
		width: auto;
		padding: 0;
		min-width: auto;
	}

	#header .header__bar {
		border-bottom: 2px solid #000;
		background: #fff;
	}

	#header .header__bar:after {
		display: block;
		clear: both;
		content: '';
	}

	#header .header__logo {
		box-sizing: border-box;
		padding: 24px 0 0 16px;
		margin-right: 0;
		width: auto;
		position: relative;
		z-index: 12;
		height: 112px;
	}

	#header .header__logo img {
		width: 370px;
		vertical-align: bottom;
	}

	#header .header__logo .header__logo__pr {
		color: #666;
		font-size: 22px;
		margin-left: 8px;
	}

	#header .header__menu {
		display: block!important;
		position: absolute;
		top: 0;
		right: 0;
		z-index: 12;
	}

	#header .header__menu a {
		display: block;
		position: relative;
		width: 127px;
		height: 112px;
	}

	#header .header__menu a .menu__icon,
	#header .header__menu a .menu__icon:before,
	#header .header__menu a .menu__icon:after {
		position: absolute;
		display: block;
		background: #000;
		width: 47px;
		height: 4px;
		border-radius: 4px;
		content: "";
		transition: all 0.3s ease;
		pointer-events: none;
	}

	#header .header__menu a .menu__icon {
		top: 50%;
		left: 40px;
	}

	#header.header--open .header__menu a .menu__icon {
		background: #FFF;
	}

	#header .header__menu a .menu__icon:before {
		transform-origin: 0 0;
		top: -19px;
	}

	#header.header--open .header__menu a .menu__icon:before {
		-moz-transform: translateX(8px) translateY(3px) rotate(45deg);
		-webkit-transform: translateX(8px) translateY(3px) rotate(45deg);
		-o-transform: translateX(8px) translateY(3px) rotate(45deg);
		-ms-transform: translateX(8px) translateY(3px) rotate(45deg);
		transform: translateX(8px) translateY(3px) rotate(45deg);
	}

	#header .header__menu a .menu__icon:after {
		transform-origin: 0 bottom;
		bottom: -19px;
	}

	#header.header--open .header__menu a .menu__icon:after {
		-moz-transform: translateX(8px) translateY(-3px) rotate(-45deg);
		-webkit-transform: translateX(8px) translateY(-3px) rotate(-45deg);
		-o-transform: translateX(8px) translateY(-3px) rotate(-45deg);
		-ms-transform: translateX(8px) translateY(-3px) rotate(-45deg);
		transform: translateX(8px) translateY(-3px) rotate(-45deg);
	}

	#header .header__spMenu {
		clear: both;
		padding-top: 0;
	}

	#header .header__spMenu ul {
		display: flex;
	}

	#header .header__spMenu ul li {
		width: 33.333%;
		margin-right: 6px;
		line-height: 100%;
		font-size: 30px;
		font-weight: 700;
		text-align: center;
	}

	#header .header__spMenu ul li:last-child {
		margin-right: 0;
	}

	#header .header__spMenu ul li a {
		display: block;
		background: #EFE9CC;
		padding: 30px 0;
		text-decoration: none;
		-webkit-border-top-left-radius: 12px;
		-webkit-border-top-right-radius: 12px;
		-moz-border-radius-topleft: 12px;
		-moz-border-radius-topright: 12px;
		border-top-left-radius: 12px;
		border-top-right-radius: 12px;
	}

	#header .header__nav {
		position: absolute;
		top: 112px;
		right: 0;
		bottom: 0;
		left: 0;
		height: 100%;
		padding-top: 0;
		clear: both;
		float: none;
		visibility: hidden;
		z-index: -1;
		opacity: 0;
		transition: all 0.3s ease;
	}

	#header.header--open .header__nav {
		z-index: 11;
		visibility: visible;
		opacity: 1;
	}

	#header .header__nav > ul > li,
	#header .header__nav > ul > li .more__top li {
		position: relative;
		display: block;
		border-top: 2px solid #CCC;
		background: #fff;
	}

	#header .header__nav > ul > li.sp-only {
		display: block;
	}

	#header .header__nav > ul > li:after,
	#header .header__nav > ul > li .more__top li:after {
		position: absolute;
		content: '';
		top: 32px;
		right: 30px;
		border-right: 4px solid #000;
		border-bottom: 4px solid #000;
		width: 18px;
		height: 18px;
		box-sizing: border-box;
		transform-origin: 100% 100%;
		transform: rotate(-45deg);
	}

	#header .header__nav > ul > li:first-child {
		border-color: #000;
	}

	#header .header__nav > ul > li .more__top li:first-child {
		border-top: none;
	}

	#header .header__nav > ul > li .more__bottom {
		border-top: 2px solid #000000;
	}

	#header .header__nav > ul > li > ul {
		display: block;
		font-size: 30px;
		padding-bottom: 20px;
	}

	#header .header__nav > ul > li > ul li a {
		display: block;
		position: relative;
		padding: 0 0 20px 92px;
		text-decoration: none;
	}

	#header .header__nav > ul > li > ul li a:after {
		position: absolute;
		content: '';
		top: 12px;
		left: 73px;
		border-right: 2px solid #858585;
		border-top: 2px solid #858585;
		width: 10px;
		height: 10px;
		box-sizing: border-box;
		transform-origin: 0 0;
		transform: rotate(45deg);
	}

	#header .header__nav > ul > li > a,
	#header .header__nav > ul > li .more__top li a {
		height: auto;
		line-height: 100%;
		padding: 35px 40px;
		font-size: 30px;
		font-weight: 700;
	}

	#header .header__nav > ul > li .more__inner {
		visibility: visible!important;
		position: static;
		width: auto;
		margin-left: 0;
		background: #FFF;
		border-radius: 0;
		padding: 0px;
		font-size: 30px;
		-webkit-box-shadow: none;
		-moz-box-shadow: none;
		box-shadow: none;
		margin-top: 0;
		box-sizing: border-box;
		z-index: 1!important;
		opacity: 1!important;
		transition: all 0.3s ease;
	}

	#header .header__nav > ul > li .more__inner ul li {
		margin-bottom: 5px;
	}

	#header .header__nav > ul > li .more__inner ul li ul {
		display: block;
		font-size: 30px;
		margin: 0;
		padding-bottom: 20px;
	}

	#header .header__nav > ul > li .more__inner ul li ul li {
		border-top: none;
		margin: 0;
	}

	#header .header__nav > ul > li .more__inner ul li ul li:after {
		display: none;
	}

	#header .header__nav > ul > li .more__inner ul li ul li a {
		display: block;
		position: relative;
		padding: 0 0 20px 92px;
		text-decoration: none;
		line-height: 160%;
		font-weight: normal;
	}

	#header .header__nav > ul > li .more__inner ul li ul li a:after {
		position: absolute;
		content: '';
		top: 12px;
		left: 73px;
		border-right: 2px solid #858585;
		border-top: 2px solid #858585;
		width: 10px;
		height: 10px;
		box-sizing: border-box;
		transform-origin: 0 0;
		transform: rotate(45deg);
	}

	#header .header__nav > ul > li .more__inner ul:last-child li:last-child {
		margin-bottom: 0;
	}

	#header .header__nav > ul > li .more__inner ul li a {
		display: block;
		text-decoration: none;
	}

	#header .header__nav > ul > li .more__inner ul li a:hover {
		text-decoration: underline;
	}

	#header .header__nav > ul > li .more__bottom {
		padding: 25px 0;
		background: #efefef;
	}

	#header .header__nav > ul > li .more__bottom li {
		position: relative;
	}

	#header .header__nav > ul > li .more__bottom li a {
		display: block;
		padding: 15px 0 15px 65px;
		line-height: 130%;
	}

	#header .header__nav > ul > li .more__bottom li:after {
		position: absolute;
		content: '';
		top: 25px;
		left: 48px;
		border-right: 2px solid #858585;
		border-top: 2px solid #858585;
		width: 10px;
		height: 10px;
		box-sizing: border-box;
		transform-origin: 0 0;
		transform: rotate(45deg);
	}

	#header .header__search {
		display: none;
		float: none;
		margin: 0;
		padding: 29px 30px;
		background: #FFF;
	}

	#header .header__search .search__keyword {
		width: 100%;
		border-width: 2px;
		height: 88px;
		line-height: 84px;
		padding: 0 100px 0 100px;
		border-radius: 50px;
		font-size: 38px;
	}

	#header .header__search .search__keyword::placeholder {
		text-align: center;
	}

	#header .header__search .search__button {
		width: 40px;
		height: 40px;
		margin-top: -20px;
		top: 50%;
		right: 70px;
	}

	#header .header__menu {
		display: none;
	}

	#header .header__promotion {
		display: block;
	}

	#header .header__attentionKeyword {
		background: #FFF;
		overflow: auto;
		padding: 30px;
		-webkit-overflow-scrolling: touch;
	}

	body.home #header .header__attentionKeyword {
		padding-top: 0;
	}

	#header .header__attentionKeyword .attentionKeyword__title {
		display: none;
	}

	#header .header__attentionKeyword .attentionKeyword__list li {
		margin-right: 14px;
	}

	#header .header__attentionKeyword .attentionKeyword__list li a {
		padding: 10px 20px;
		border-radius: 30px;
		font-size: 28px;
	}

	#header .header__promotion .header__promotion__text {
		display: none;
	}

	#header .header__sns {
		position: absolute;
		top: 40px;
		right: 127px;
		margin-top: 0;
		margin-left: 0;
	}

	#header .header__sns ul li {
		margin-right: 32px;
	}

	#header .header__sns ul li:last-child {
		margin-right: 0;
	}

	#header .header__sns ul li img {
		width: 40px;
	}

	/*-----------------------------------------
	feature
	-----------------------------------------*/
	#feature {
		background-image: none;
	}

	#feature #contents {
		padding-top: 50px;
	}

	/*-----------------------------------------
	contents
	-----------------------------------------*/
	#contents {
		width: auto;
		margin: 0 40px;
		padding: 0;
	}

	/*-----------------------------------------
	main
	-----------------------------------------*/
	#main {
		float: none;
		width: auto;
	}

	/*-----------------------------------------
	side
	-----------------------------------------*/
	#side {
		display: none;
		float: none;
		width: auto;
	}

	/*-----------------------------------------
	topicPath
	-----------------------------------------*/
	.topicPath {
		min-width: 0;
		display: none;
		padding: 20px 40px;
	}

	.topicPath.topicPath--last {
		display: block;
		margin-top: 0;
	}

	.topicPath ol {
		width: auto;
	}

	.topicPath ol li {
		font-size: 28px;
	}

	.topicPath ol li a {
		margin-right: 10px;
		padding-right: 20px;
	}

	.topicPath ol li a:after {
		margin-top: -1em;
		font-size: 20px;
	}

	/*-----------------------------------------
	sectionItem
	-----------------------------------------*/
	.sectionItem {
		margin-bottom: 90px!important;
	}

	/*-----------------------------------------
	table
	-----------------------------------------*/
	.scrollTable table {
		display: block;
		overflow-x: scroll;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
	}

	.table01 {
		border-width: 2px;
	}

	.table01 th {
		border-width: 2px;
		padding: 20px 0 20px 40px;
		line-height: 133%;
		width: 290px;
		font-size: 30px;
	}

	.table01 td {
		border-width: 2px;
		padding: 20px 40px;
		line-height: 133%;
		font-size: 30px;
	}

	.table02 th {
		border-width: 2px;
		padding: 20px;
		line-height: 153%;
		font-size: 30px;
	}

	.table02 td {
		border-width: 2px;
		padding: 20px 40px;
		line-height: 153%;
		font-size: 30px;
	}

	.spWidthMax .table02 th:first-child {
		border-left: none;
		width: 45%;
	}

	.spWidthMax .table02 th:last-child {
		border-right: none;
		width: 55%;
	}

	.spWidthMax .table02 td:first-child {
		border-left: none;
	}

	.spWidthMax .table02 td:last-child {
		border-right: none;
	}

	.table03 caption {
		margin-top: 20px;
		text-align: left;
		font-size: 26px;
	}

	.table03 th {
		border-width: 2px;
		padding: 20px;
		font-size: 30px;
	}

	.table03 td {
		border-width: 2px;
		padding: 20px;
		font-size: 30px;
	}

	/*-----------------------------------------
	tabList
	-----------------------------------------*/
	.tabList {
		margin: 0 -40px 50px -40px;
		padding-bottom: 20px;
		border-width: 2px;
		-webkit-overflow-scrolling: touch;
		overflow: auto;
	}

	.narrowDownSearch__wrapper .tabList {
		margin-bottom: 0;
	}

	.tabList ul {
		display: block;
		white-space: nowrap;
		padding: 0 32px;
	}

	.tabList ul li {
		display: inline-block;
	}

	.tabList ul li a {
		padding: 15px 30px;
		min-width: 140px;
		border-radius: 40px;
		font-size: 30px;
	}

	/*-----------------------------------------
	simulatorList
	-----------------------------------------*/
	.simulatorList ul {
		display: block;
		padding-top: 40px;
	}

	.simulatorList ul li {
		width: auto;
		margin-top: 40px;
	}

	#feature .entry .simulatorList ul li:nth-child(2) {
		margin-top: 40px;
	}


	/*-----------------------------------------
	portalList
	-----------------------------------------*/
	.portalList ul {
		display: flex;
		margin-top: -30px;
	}

	.portalList ul:before{
		width: 48%;
	}

	.portalList ul:after {
		width: 48%;
	}

	.portalList ul li {
		width: 48%;
		margin-top: 30px;
	}

	/*-----------------------------------------
	cardList
	-----------------------------------------*/
	.cardList {
		-webkit-overflow-scrolling: touch;
		overflow: auto;
		margin: 0 -40px;
	}

	.cardList.cardList--spVertical ul {
		display: block;
	}

	.cardList ul {
		overflow-x: scroll;
		padding: 0 38px 0 38px;
		flex-wrap: nowrap;
	}

	.cardList.cardList--spTile ul {
		overflow: visible;
		flex-wrap: wrap;
	}

	.cardList.cardList--ranking ul {
		padding: 0;
	}

	.cardList ul li {
		vertical-align: top;
		width: 310px;
		min-width: 310px;
		margin: 0 20px 0 0!important;
	}

	.cardList.cardList--ranking ul li:before {
		display: none!important;
	}

	.cardList.cardList--spTile ul li {
		margin: 20px 20px 0 0!important;
		width: 326px;
		min-width: 326px;
	}

	.cardList.cardList--spTile ul li:nth-child(1),
	.cardList.cardList--spTile ul li:nth-child(2) {
		margin-top: 0!important;
	}

	.cardList.cardList--spTile ul li:nth-child(2n) {
		margin-right: 0!important;
	}

	.cardList.cardList--spVertical > ul > li {
		width: auto;
		min-width: 0;
		margin: 30px 0 0 0!important;
	}

	.cardList.cardList--spColumn2 > ul {
		display: flex;
		flex-wrap: wrap;
		gap: 0 4%;
	}

	.cardList.cardList--spColumn2 > ul > li {
		width: 48%;
		min-width: 48%;
		margin: 30px 0 0 0!important;
	}

	.cardList.cardList--spVertical.cardList--ranking > ul > li {
		border-top: 2px solid #858585!important;
		margin: 0!important;
		padding: 40px;
		width: auto!important;
		min-width: 0!important;
		box-sizing: border-box;
	}


	.cardList.cardList--spVertical ul li:after {
		display: block;
		clear: both;
		content: '';
	}

	.cardList.cardList--spVertical > ul > li:first-child,
	.cardList.cardList--spColumn2 > ul > li:nth-child(2) {
		margin-top: 0!important;
	}

	.cardList ul li .item__rank {
		border-radius: 30px;
		margin: 12px auto 15px auto;
		width: 60px;
		height: 60px;
		line-height: 60px;
		font-size: 30px;
	}

	.cardList.cardList--spVertical.cardList--ranking ul li .item__rank {
		margin-top: 0;
	}

	.cardList ul li:nth-child(1) .item__rank,
	.cardList ul li:nth-child(2) .item__rank,
	.cardList ul li:nth-child(3) .item__rank {
		margin: 0 auto 15px auto;
		width: 90px;
		height: 72px;
	}

	.cardList.cardList--spVertical.cardList--ranking ul li:nth-child(1) .item__rank,
	.cardList.cardList--spVertical.cardList--ranking ul li:nth-child(2) .item__rank,
	.cardList.cardList--spVertical.cardList--ranking ul li:nth-child(3) .item__rank {
		width: 80px;
		height: 72px;
		padding-top: 33px;
		font-size: 34px;
	}

	.cardList ul li .item__figure {
		margin-bottom: 20px;
	}

	.cardList ul li .item__figure img {
		border-radius: 16px;
	}

	.cardList.cardList--spVertical ul li .item__figure {
		float: none;
		width: auto;
	}

	.cardList.cardList--spVertical ul li .item__description {
		float: none;
		margin-left: 0;
		width: auto;
	}

	.cardList ul li .description__place {
		margin-bottom: 5px;
		font-size: 24px;
	}

	.cardList ul li .description__title {
		font-size: 28px;
	}

	.cardList.cardList--ranking ul li .description__title {
		font-size: 30px!important;
	}

	.cardList ul li .description__price {
		margin-bottom: 10px;
		font-size: 36px;
	}

	.cardList.cardList--ranking ul li .description__price {
		font-size: 40px!important;
	}

	.cardList ul li .description__source {
		font-size: 20px;
	}

	.cardList.cardList--ranking ul li .description__text {
		margin-top: 30px;
		line-height: 150%;
		font-size: 30px;
	}

	.cardList.cardList--ranking ul li .description__button {
		display: block;
		width: auto;
		padding: 30px 20px;
		font-size: 30px;
	}

	/*-----------------------------------------
	notFound
	-----------------------------------------*/
	.notFound {
		border-width: 2px;
	}

	/*-----------------------------------------
	tagList
	-----------------------------------------*/
	.tagList  {
		margin-top: 0;
	}

	.tagList ul {
		font-size: 0;
	}

	.tagList ul li {
		display: inline-block;
		margin: 0 26px 26px 0!important;
		width: auto!important;
		min-width: 0!important;
	}

	.tagList ul li a {
		border-radius: 60px!important;
		padding: 10px 20px!important;
		font-size: 28px!important;
	}


	/*-----------------------------------------
	specialList
	-----------------------------------------*/
	.specialList.specialList--normal ul li,
	.specialList.specialList--column3 ul li {
		display: block;
		width: auto!important;
		margin: 40px 0 0 0!important;
	}

	.specialList.specialList--normal ul li {
		margin: 5px -40px 0 -40px!important;
	}

	.specialList.specialList--radius ul li {
		margin-top: 20px!important;
	}

	.specialList.specialList--normal ul li:first-child,
	.specialList.specialList--column3 ul li:first-child {
		margin-top: 0!important;
	}

	.specialList.specialList--normal ul li a {
		border-radius: 0;
	}

	.specialList.specialList--normal ul li a .item__figure,
	.specialList.specialList--column3 ul li a .item__figure {
		float: left;
		width: 180px;
	}

	.specialList.specialList--normal ul li a .item__figure img {
		border-radius: 16px;
	}

	.specialList.specialList--normal ul li a .item__description,
	.specialList.specialList--column3 ul li a .item__description {
		margin-left: 210px;
		line-height: 133%;
		font-size: 30px;
	}

	.specialList.specialList--normal ul li a .item__description .description__category,
	.specialList.specialList--column3 ul li a .item__description .description__category {
		margin-bottom: 20px;
	}

	.specialList.specialList--radius ul li a .item__description .description__category {
		margin-bottom: 15px;
	}

	.localPage__special--radius ul li a .item__description {
		padding: 20px 30px;
	}

	.specialList.specialList--radius ul li a .item__description .description__title {
		-webkit-line-clamp: 2;
	}

	/*-----------------------------------------
	categoryList
	-----------------------------------------*/
	.categoryList ul {
		margin-top: -20px;
	}

	.categoryList ul li {
		border-width: 2px;
		margin-bottom: -2px;
		width: 50%;
	}

	.categoryList ul li:nth-child(4n+1) {
		border-left: none;
	}

	.categoryList ul li:nth-child(2n+1) {
		border-left: 2px solid #000000;
	}

	.categoryList ul li a {
		padding: 20px 10px;
		text-decoration: none;
		font-size: 30px;
		min-height: 105px;
	}

	/*-----------------------------------------
	hierarchyCategoryList
	-----------------------------------------*/
	.hierarchyCategoryList > ul {
		padding: 40px;
	}

	.hierarchyCategoryList > ul > li {
		margin-bottom: 44px;
	}

	.hierarchyCategoryList > ul > li:last-child {
		margin-bottom: 0;
	}

	.hierarchyCategoryList > ul > li > p {
		margin-bottom: 12px;
	}

	.hierarchyCategoryList > ul > li > ul {
		display: block;
	}

	.hierarchyCategoryList > ul > li > ul li {
		margin-bottom: 4px;
	}

	.hierarchyCategoryList > ul > li > ul li:last-child {
		margin-bottom: 0;
	}

	/*-----------------------------------------
	tagCategoryList
	-----------------------------------------*/
	.tagCategoryList ul {
		display: block;
		padding: 40px;
	}

	.tagCategoryList ul li {
		margin: 0 0 10px 0;
	}

	.tagCategoryList ul li:last-child {
		margin-bottom: 0;
	}

	/*-----------------------------------------
	featureCategoryList
	-----------------------------------------*/
	.featureCategoryList ul li,
	.featureCategoryList ul li:nth-child(3n) {
		width: 48.9%;
		margin: 10px 2.2% 0 0;
	}

	.featureCategoryList ul li:nth-child(1),
	.featureCategoryList ul li:nth-child(2) {
		margin-top: 0;
	}

	.featureCategoryList ul li:nth-child(2n) {
		margin-right: 0;
	}

	.featureCategoryList ul li a .item__figure {
		width: 33%;
	}

	.featureCategoryList ul li a .item__description {
		width: 67%;
		padding: 0 0 0 20px;
		line-height: 153%;
		font-size: 26px;
	}


	/*-----------------------------------------
	faqList
	-----------------------------------------*/
	.faqList .title01 {
		font-size: 36px;
	}

	.faqList dl dt {
		margin-bottom: 30px;
	}

	.faqList dl dd {
		margin-bottom: 50px;
	}

	.faqList dl .item__icon {
		padding: 0;
		font-size: 36px;
	}

	/*-----------------------------------------
	faqAnchorList
	-----------------------------------------*/
	.faqAnchorList {
		border-width: 2px;
		padding: 35px;
	}

	.faqAnchorList li {
		display: block;
		width: auto;
		margin: 20px 0 0 0;
	}

	.faqAnchorList li:nth-child(1) {
		margin-top: 0;
	}

	.faqAnchorList li:nth-child(2) {
		margin-top: 20px;
	}

	.faqAnchorList li a {
		padding-left: 29px;
		font-size: 30px;
	}

	.faqAnchorList li a:after {
		top: 0.3em;
		left: 2px;
		width: 13px;
		height: 13px;
		border-width: 3px;
	}

	/*-----------------------------------------
	faqSectionItem
	-----------------------------------------*/
	.faqSectionItem li {
		margin-top: 20px;
	}

	.faqSectionItem li:first-child {
		margin-top: 0;
	}

	.faqSectionItem li a {
		padding-left: 39px;
		font-size: 30px;
	}

	.faqSectionItem li a:after {
		top: 0.4em;
		left: 8px;
		width: 13px;
		height: 13px;
		border-width: 3px;
	}

	/*-----------------------------------------
	faqDetail
	-----------------------------------------*/
	.faqDetail .faqDetail__note {
		font-size: 24px;
	}

	/*-----------------------------------------
	title
	-----------------------------------------*/
	.title01 {
		margin-bottom: 50px;
		font-size: 44px;
	}

	.title01--margin01 {
		margin-bottom: 30px;
	}

	.title01--category {
		font-size: 40px;
	}

	.title02 {
		margin-bottom: 30px;
		font-size: 36px;
	}

	.title03 {
		font-size: 36px;
	}

	.title04 {
		margin-bottom: 20px;
		font-size: 30px;
	}

	.title05 {
		margin-bottom: 50px;
		font-size: 44px;
	}

	.title06 {
		margin-bottom: 50px;
		font-size: 40px;
	}

	.title07 {
		margin-bottom: 50px;
		font-size: 36px;
	}

	.title08 {
		margin-bottom: 0!important;
		font-size: 24px;
	}

	/*-----------------------------------------
	note
	-----------------------------------------*/
	.note01 {
		margin-top: 30px;
		font-size: 20px;
	}

	/*-----------------------------------------
	button
	-----------------------------------------*/
	.button01 {
		border-radius: 12px;
		width: 100%;
		padding: 25px 15px;
		font-size: 30px;
	}

	.button01.button01--more {
		border-width: 2px;
	}

	.button01.button01--more:after {
		top: 40px;
		right: 30px;
		border-width: 4px;
		width: 16px;
		height: 16px;
	}

	.button01.button01--default {
		border-width: 4px;
	}

	.button01.button01--sim {
		width: 100%;
		padding: 30px;
		font-size: 30px;
	}

	.button01--default .button01--text-small {
		margin-left: 10px;
		font-size: 20px;
	}

	.button01.button01--secondary {
		border-width: 4px;
	}

	/*-----------------------------------------
	narrowDownSearch
	-----------------------------------------*/
	.narrowDownSearch__wrapper {
		margin-bottom: 50px;
	}

	.narrowDownSearch__inner {
		width: 100%;
		background: #FFF;
		margin-top: -40px;
		padding: 40px 0 0 0;
	}

	.narrowDownSearch__inner.narrowDownSearch__inner--scroll {
		position: fixed;
		top: 0;
		left: 0;
		margin-top: 0;
		padding-left: 40px;
		padding-right: 40px;
		z-index: 20;
	}

	.narrowDownSearch {
		display: flex;
		margin-bottom: 35px;
		align-items: center;
	}

	.narrowDownSearch .narrowDownSearch__total {
		margin-right: 0;
		font-size: 30px;
	}

	.narrowDownSearch .narrowDownSearch__total b {
		font-size: 40px;
		font-weight: 700;
	}


	.narrowDownSearch .narrowDownSearch__filter {
		border: 4px solid #000;
		border-radius: 12px;
		width: 270px!important;
		height: 100px;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__head,
	.narrowDownSearch .narrowDownSearch__filter.narrowDownSearch__filter--setting .filter__head {
		padding-left: 105px!important;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__head .head__title,
	.narrowDownSearch .narrowDownSearch__filter.narrowDownSearch__filter--setting .filter__head .head__title {
		line-height: 92px;
		padding-top: 0;
		font-size: 30px;
		color: #000;
	}


	/* filter */
	.narrowDownSearch .narrowDownSearch__filter:after {
		top: 50%;
		left: 38px;
		background-size: 41px 27px;
		width: 41px;
		height: 27px;
		margin-top: -13px!important;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__inner {
		position: fixed;
		background: #FFF;
		left: 0;
		top: 0;
		right: 0;
		bottom: 0;
		border-radius: 0;
		-webkit-box-shadow: none;
		-moz-box-shadow: none;
		box-shadow: none;
		width: auto;
		padding-top: 0;
	}

	.narrowDownSearch .narrowDownSearch__filter .head__button {
		display: none;
		position: fixed;
		bottom: 0;
		left: 0;
		right: 0;
		background: url(../images/common/bg_narrowdown.png) repeat 0 0;
		padding: 40px 0 0 37px;
		z-index: 21;
		height: 180px;
		box-sizing: border-box;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__head .button__clear {
		width: 250px;
		line-height: 96px;
		height: 96px;
		border: none;
		background: rgba(255,255,255,0.3);
		border-radius: 12px;
		font-size: 30px;
		font-weight: 700;
		color: #FFF;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__head .button__search {
		width: 400px;
		margin-left: 25px;
		line-height: 96px;
		height: 96px;
		box-sizing: border-box;
		text-align: left;
		padding-left: 173px;
		background: url(../images/common/icon_filter.png) #fff no-repeat 106px 50%;
		background-size: 41px 27px;
		border-radius: 12px;
		font-size: 30px;
		font-weight: 700;
		color: #000;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__bar {
		position: relative;
		border-bottom: 4px solid #000;
		line-height: 102px;
		width: 100%;
		height: 106px;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__bar .bar__title {
		padding: 35px 0 0 40px;
		line-height: 100%;
		font-size: 36px;
		font-weight: 700;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__bar .bar__close {
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		width: 130px;
		height: 102px;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__bar .bar__close:before,
	.narrowDownSearch .narrowDownSearch__filter .filter__bar .bar__close:after {
		position: absolute;
		display: block;
		background: #000;
		width: 50px;
		height: 4px;
		border-radius: 4px;
		content: "";
		pointer-events: none;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__bar .bar__close:before {
		top: 50%;
		left: 45px;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__bar .bar__close:before {
		transform: rotate(45deg);
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__bar .bar__close:after {
		top: 50%;
		left: 45px;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__bar .bar__close:after {
		transform: rotate(-45deg);
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__pulldown {
		height: calc(100% - 106px - 180px);
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__keyword {
		padding: 40px;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__keyword .keyword__title {
		margin-bottom: 20px;
		font-size: 30px;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__keyword .keyword__input input {
		max-width: 100%;
		height: 85px;
		line-height: 85px;
		padding-top: 0;
		padding-bottom: 0;
		width: 100%;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__keyword .keyword__input input::placeholder {
		font-size: 24px;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category > ul {
		border-width: 2px;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category > ul > li {
		border-width: 2px;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category > ul > li > .category__text,
	.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category > ul > li label {
		padding: 40px;
		font-size: 30px;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category > ul > li > ul {
		font-size: 30px;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category .accordion-toggle {
		width: 100px;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category .accordion-open:after {
		top: 45px;
		right: 40px;
		border-left: 3px solid #000;
		border-bottom: 3px solid #000;
		width: 16px;
		height: 16px;
		box-sizing: border-box;
		transform: rotate(-45deg);
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category .accordion-open.accordion-open--current:after {
		top: 50px;
		transform: rotate(135deg);
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category > ul > li > ul .accordion-open:after {
		top: 35px;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category > ul > li > ul .accordion-open.accordion-open--current:after {
		top: 40px;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category > ul > li > ul li {
		border-width: 2px;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category > ul > li > ul li label {
		padding: 30px 40px;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category > ul > li > ul li li label {
		padding-left: 90px;
	}

	.narrowDownSearch .narrowDownSearch__filter .filter__pulldown .pulldown__category > ul > li > ul li li li label {
		padding-left: 140px;
	}

	/* filter open */
	.narrowDownSearch .narrowDownSearch__filter.narrowDownSearch__filter--open .head__button {
		display: flex;
	}

	.narrowDownSearch .narrowDownSearch__filter.narrowDownSearch__filter--open .filter__inner {
		z-index: 20;
	}

	.narrowDownSearch .narrowDownSearch__filter.narrowDownSearch__filter--open .filter__head {
		display: block;
		position: static;
		width: auto;
		height: 70px;
	}

	.narrowDownSearch .narrowDownSearch__filter.narrowDownSearch__filter--open .filter__head .head__title {
		width: auto;
		padding-left: 0;
	}


	/*-----------------------------------------
	localPage
	-----------------------------------------*/
	.categoryModalWindow .categoryModalWindow__content {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		transform: translate(0, 0);
		border-radius: 0;
		padding: 0;
		overflow: auto;
	}

	.categoryModalWindow .content__head {
		position: relative;
		border-bottom: 4px solid #000;
		line-height: 102px;
		width: 100%;
		height: 106px;
	}
	.categoryModalWindow .content__head .head__title {
		padding: 35px 0 0 40px;
		line-height: 100%;
		font-size: 36px;
	}

	.categoryModalWindow .content__head .head__close {
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		width: 130px;
		height: 102px;
	}

	.categoryModalWindow .content__head .head__close:before,
	.categoryModalWindow .content__head .head__close:after {
		position: absolute;
		display: block;
		background: #000;
		width: 50px;
		height: 4px;
		border-radius: 4px;
		content: "";
		pointer-events: none;
	}

	.categoryModalWindow .content__head .head__close:before {
		top: 50%;
		left: 45px;
	}

	.categoryModalWindow .content__head .head__close:before {
		transform: rotate(45deg);
	}

	.categoryModalWindow .content__head .head__close:after {
		top: 50%;
		left: 45px;
	}

	.categoryModalWindow .content__head .head__close:after {
		transform: rotate(-45deg);
	}

	.categoryModalWindow .content__body {
		width: auto;
		padding-bottom: 0;
	}

	.categoryModalWindow .content__body ul li {
		font-size: 15px;
		font-weight: 700;
	}

	.categoryModalWindow .content__body ul li ul {
		border-top: 2px solid #000;
		padding: 0;
	}

	.categoryModalWindow .content__body .body__item ul li a {
		position: relative;
		padding: 40px;
		font-size: 30px;
	}

	.categoryModalWindow .content__body .body__item > ul > li > a {
		margin-left: 0;
		padding: 40px;
	}

	.categoryModalWindow .content__body .body__item ul li a:after {
		position: absolute;
		content: '';
		top: 45px;
		left: auto;
		right: 30px;
		border: none;
		border-right: 4px solid #000;
		border-bottom: 4px solid #000;
		width: 18px;
		height: 18px;
		margin: 0;
		box-sizing: border-box;
		transform-origin: 100% 100%;
		transform: rotate(-45deg);
	}

	.categoryModalWindow .content__body .body__item ul li ul {
		border-bottom: 2px solid #CCC;
		display: block;
	}

	.categoryModalWindow .content__body .body__item ul li ul li {
		border-top: 2px solid #CCC;
		width: auto;
	}

	.categoryModalWindow .content__body .body__item ul li ul li a {
		padding-left: 70px;
	}

	.categoryModalWindow .content__body .body__item ul li ul li:first-child {
		border-top: none;
	}

	/*-----------------------------------------
	localPage
	-----------------------------------------*/
	.localPage__head {
		margin-bottom: 60px;
		padding: 50px 0 0 0;
	}

	.localPage__head .head__category {
		display: inline-block;
		border: 2px solid #666666;
		margin-bottom: 40px;
		padding: 5px 15px;
		font-size: 28px;
	}

	.localPage__head .head__inner {
		width: auto;
	}

	.localPage__head .head__title {
		margin-bottom: 30px;
		font-size: 54px;
	}

	.localPage__head .head__title--relative {
		font-size: 53px;
	}

	.localPage__head .head__figure {
		margin: 50px -40px 30px -40px;
	}

	.localPage__head .head__update {
		margin-top: 45px;
		font-size: 24px;
	}

	.localPage__head .head__update strong {
		font-size: 30px;
	}

	.localPage__special {
		padding: 0;
	}

	.localPage__special .title01 {
		margin-bottom: 30px;
	}

	.localPage__special ul {
		display: block;
	}

	.localPage__special ul li {
		width: auto!important;
		margin: 40px 0 0 0!important;
	}

	.localPage__special.localPage__special--index {
		margin: 0 -40px;
	}

	.localPage__special.localPage__special--index ul {
		display: flex;
	}

	.localPage__special.localPage__special--index ul li {
		width: 49%!important;
		margin: 0 2% 2% 0!important;
	}

	.localPage__special.localPage__special--index ul li:nth-child(2n) {
		margin-right: 0!important;
	}

	.localPage__special.localPage__special--index ul li a {
		border-radius: 0;
	}

	.localPage__special.localPage__special--index ul li a img {
		border-radius: 0;
	}

	.localPage__special ul li:first-child {
		margin-top: 0!important;
	}

	.localPage__special ul li a {
		text-decoration: none;
	}

	.localPage__special ul li:nth-child(3n) {
		margin-right: 0;
	}

	.localPage__special--radius ul li a .item__description {
		display: block;
		padding: 0 25px 35px 25px;
	}

	.localPage__special--radius ul li .item__category {
		margin-bottom: 0;
		font-size: 24px;
	}

	.localPage__special ul li .item__figure {
		margin-bottom: 20px;
	}

	.localPage__special ul li .item__figure img {
		width: 100%;
		border-radius: 16px;
	}

	/*-----------------------------------------
	localPage__city
	-----------------------------------------*/
	.localPage__city {
		border: none;
	}

	.localPage__city dl {
		padding-top: 0;
	}

	.localPage__city dt {
		margin-top: 30px;
		font-size: 30px;
	}

	.localPage__city ul li {
		margin: 30px 30px 0 0;
		font-size: 30px;
	}

	.localPage__city dd ul li {
		margin-right: 20px;
	}

	.localPage__city ul li a {
		padding-left: 20px;
	}

	.localPage__city dd ul li a {
		padding-left: 17px;
	}

	.localPage__city ul li a:after {
		margin: -8px 0 0 -1px;
		width: 13px;
		height: 13px;
		border-width: 3px;
	}

	/*-----------------------------------------
	localPage__info
	-----------------------------------------*/
	.localPage__info .info__description {
		width: auto;
		float: none;
	}

	.localPage__info .info__map {
		margin-top: 40px;
		width: auto;
		float: none;
	}

	/*-----------------------------------------
	simContent
	-----------------------------------------*/
	.simContent .simContent__selectbox .selectbox__item {
		width: auto;
		float: none;
	}

	.simContent .simContent__selectbox .selectbox__item:after {
		display: block;
		content: '';
		clear: both;
	}

	.simContent .simContent__selectbox .selectbox__item:last-child {
		text-align: left;
		padding-top: 40px;
	}

	.simContent .simContent__selectbox .selectbox__item label {
		margin-right: 0;
		padding-top: 30px;
		float: left;
		line-height: 1;
		font-size: 34px;
	}

	.simContent .simContent__selectbox .selectbox__item select {
		width: 500px;
		float: right;
	}

	.simContent .simContent__button {
		margin-top: 60px;
	}

	.simContent .simContent__price {
		margin-top: 60px;
		padding: 40px 30px 30px 30px;
		font-size: 34px;
	}

	.simContent .simContent__price .price__text {
		display: block;
		margin-bottom: 20px;
		line-height: 100%;
		font-size: 34px;
	}

	.simContent .simContent__price .price__yen {
		line-height: 100%;
		font-size: 80px;
	}

	.simContent .simContent__price .price__yen .price__unit {
		font-size: 40px;
	}

	.simContent .simContent__note {
		margin-top: 70px;
		margin-bottom: 70px;
		font-size: 24px;
	}

	/*-----------------------------------------
	icon
	-----------------------------------------*/
	.decoration--3lines {
		width: 75px;
		height: 75px;
	}

	.decoration--3lines02 {
		background-image: url(../images/common/bg_pagetitle_ranking.png);
		background-size: contain;
		width: 55px;
		height: 50px;
		left: 100%;
		top: auto;
		bottom: 45px;
	}

	.icon--mountain {
		background-size: 1.175em 0.35em;
		background-position: 0 0.3em;
	}

	.icon_external {
		margin-left: 20px;
		width: 22px;
	}

	.icon_external:before,
	.icon_external:after {
		width: 22px;
		height: 20px;
		border-width: 3px;
	}

	.icon_external:before {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 2;
		box-shadow: -3px 3px 0px 0px rgba(255,255,255,1);
	}

	.icon_external:after {
		position: absolute;
		top: 7px;
		left: -7px;
		z-index: 1;
	}

	.icon_external.icon_external--small {
		margin-left: 25px;
		margin-top: 0.2em;
		width: 22px;
	}

	.icon_external.icon_external--small:before,
	.icon_external.icon_external--small:after {
		border-width: 2px;
		width: 22px;
		height: 20px;
	}

	.icon_external.icon_external--small:after {
		top: 7px;
		left: -8px;
	}

	.icon--category--ranking {
		left: 20px;
	}

	/*-----------------------------------------
	detailPage
	-----------------------------------------*/
	.detailPage {
		padding-top: 0;
	}

	.detailPage__mv {
		margin: 0 -40px 30px -40px;
		text-align: center;
	}

	.detailPage__mv img {
		width: 100%;
	}

	.detailPage__link__source {
		margin-bottom: 40px;
		font-size: 26px;
	}

	.detailPage__head {
		position: relative;
		line-height: 153%;
	}

	.detailPage__head .head__category {
		margin-bottom: 15px;
		font-size: 30px;
	}

	.detailPage__head .head__title {
		margin-bottom: 30px;
		line-height: 150%;
		font-size: 40px;
	}

	.detailPage__head .head__source {
		position: absolute;
		top: 0;
		right: 0;
		font-size: 26px;
	}

	.detailPage__head .head__price {
		margin-bottom: 60px;
		text-align: right;
		font-size: 50px;
	}

	.detailPage__head .head__unit {
		font-size: 30px;
	}

	.detailPage__head .head__info {
		margin-top: 40px;
		margin-bottom: 40px;
	}

	.detailPage__head .head__info .info__price {
		float: none;
		margin-bottom: 40px;
		text-align: right;
		font-size: 40px;
	}

	.detailPage__head .head__info .info__link .link__pref {
		display: block;
		margin: 0 0 20px 0;
		font-size: 30px;
	}

	.detailPage__head .head__info .info__link .link__topicPath {
		display: block;
	}

	.detailPage__head .head__info .info__link .link__topicPath ol li {
		font-size: 30px;
	}

	.detailPage__head .head__info .info__link .link__topicPath ol li a:hover {
		text-decoration: none;
	}

	.detailPage__head .head__info .info__link .link__topicPath ol li:last-child a:after {
		display: none;
	}

	.detailPage__head .head__info .info__link .link__source {
		font-size: 26px;
	}

	.link__tag .icon--tag {
		margin-top: 0.3em;
	}

	.detailPage__update {
		margin-top: 50px;
		margin-left: -40px;
		margin-right: -40px;
	}

	.detailPage__update .update__title {
		margin: 0;
		padding: 20px;
		border-width: 2px;
		border-left: none;
		border-right: none;
		font-size: 30px;
	}

	.detailPage__update .update__title span {
		display: block;
		margin: 0;
		font-size: 24px;
	}

	.detailPage__update ul {
		display: block;
	}

	.detailPage__update ul li {
		display: block;
		border-bottom: 2px solid #CCC;
		width: auto;
		margin: 30px 0 0 0!important;
		padding: 30px 40px;
	}

	.detailPage__update ul li:first-child {
		margin-top: 0;
	}

	.detailPage__update ul li .item__title {
		margin-bottom: 15px;
		line-height: 160%;
		font-size: 30px;
	}

	.detailPage__update ul li .item__price {
		font-size: 40px;
		text-align: right;
	}

	.detailPage__update ul li .item__price .price__unit {
		font-size: 30px;
	}

	.detailPage__update ul li .item__description .description__site .site__note {
		margin-bottom: 15px;
		line-height: 115%;
		font-size: 26px;
	}

	.detailPage__update ul li .item__description .description__site .site__logo .logo_img {
		padding-right: 10px;
	}

	.detailPage__update ul li .item__description .description__site .site__logo .logo_img img {
		width: 54px;
	}

	.detailPage__update ul li .item__description .description__site .site__logo .logo_text {
		font-size: 30px;
	}

	.detailPage__update ul li .item__description .description__button a {
		padding: 30px 35px;
		border-radius: 12px;
		border-width: 2px;
		font-size: 30px;
	}

	.detailPage__update ul li .item__description .description__button a .icon_external:before,
	.detailPage__update ul li .item__description .description__button a .icon_external:after {
		border-width: 3px;
	}

	.detailPage__update ul li .item__description .description__button a .icon_external:before {
		box-shadow: -3px 3px 0px 0px rgba(255,255,255,1);
	}

	.detailPage__note {
		margin: 60px 0;
		line-height: 150%;
		font-size: 24px;
	}

	.detailPortalList ul {
		display: block;
	}

	.detailPortalList ul li {
		width: auto;
		margin-bottom: 20px;
	}

	.detailPortalList ul li:last-child {
		width: auto;
		margin-bottom: 0;
	}

	.detailPortalList ul li a {
		border-width: 2px;
		border-radius: 18px;
		padding: 12px 30px;
		background-size: 32px 32px;
		background-position: right 30px top 50%;
	}

	.detailPortalList ul li a .detailPortalList__logo {
		margin-bottom: 4px;
		font-size: 30px;
	}

	.detailPortalList ul li a .detailPortalList__logo_img {
		width: 54px;
	}

	.detailPortalList__logo_text {
		margin-left: 5px;
	}

	.detailPortalList ul li a .detailPortalList__description .detailPortalList__description_title {
		font-size: 30px;
	}

	.detailPortalList ul li a .detailPortalList__description .detailPortalList__description_price {
		font-size: 28px;
	}

	#contents .lgPageTitle {
		margin-top: 40px;
		margin-bottom: 26px;
		padding-left: 0;
	}

	#contents .lgPageTitle .lgPageTitle__icon span {
		margin-bottom: 14px;
		margin-right: 14px;
		padding: 8px 24px;
		line-height: 100%;
		font-size: 26px;
		border-radius: 12px;
	}

	#contents .lgPageTitle .lgPageTitle__lead {
		font-size: 32px;
	}

	#contents .lgPageTitle .lgPageTitle__heading {
		font-size: 48px;
	}

	#contents .lgPageTitle .lgPageTitle__heading span {
		font-size: 36px;
	}

	#contents .swiperArticleList {
		margin-left: -40px;
		margin-right: -40px;
	}

	#contents .swiperArticleList .swiperArticleList__items {
		overflow: auto;
		gap: 0;
	}

	#contents .swiperArticleList .swiperArticleList__item {
		min-width: 79%;
		margin-left: 40px;
	}

	#contents .swiperArticleList a .swiperArticleList__figure {
		margin-bottom: 24px;
	}

	#contents .swiperArticleList a .swiperArticleList__description .description__source {
		margin-bottom: 10px;
		font-size: 30px;
	}

	#contents .swiperArticleList a .swiperArticleList__description .description__title {
		font-size: 30px;
	}

	#contents .knowledgeList ul {
		flex-wrap: wrap;
		gap: 0 4%;
	}

	#contents .knowledgeList ul li {
		width: 48%;
	}

	#contents .knowledgeList ul li:first-child {
		margin-bottom: 4%;
		width: 100%;
	}

	/*-----------------------------------------
	paging
	-----------------------------------------*/
	.paging a {
		border-width: 2px;
		border-radius: 8px;
		height: 80px;
		line-height: 80px;
		font-size: 30px;
	}

	.paging .paging__prev a {
		padding: 0 40px 0 60px;
	}

	.paging .paging__prev a:after,
	.paging .paging__next a:after {
		display: block;
		position: absolute;
		top: 50%;
		margin-top: -6px;
		width: 15px;
		height: 15px;
		border-width: 3px;
		content: '';
	}

	.paging .paging__prev a:after {
		left: 33px;
	}

	.paging .paging__numbering {
		margin: 0 20px;
	}

	.paging .paging__numbering li {
		margin: 0 20px 0 0;
	}

	.paging .paging__numbering li a {
		width: 80px;
	}

	.paging .paging__next a {
		padding: 0 60px 0 40px;
	}

	.paging .paging__next a:after {
		right: 33px;
	}

	.paging .paging_found {
		margin-top: 25px;
		font-size: 26px;
	}

	/*-----------------------------------------
	localNav
	-----------------------------------------*/
	.localNav {
		padding: 50px 40px!important;
		margin: 0 -40px;
	}

	.localNav--block {
		display: block;
		margin: 45px 0 0 0;
		padding: 35px!important;
	}

	.localNav--block ul li {
		font-size: 30px;
	}

	.localNav ul li {
		display: inline-block;
		margin: 20px 30px 0 0;
		line-height: 130%;
		font-size: 30px;
	}

	.localNav--bothBlock ul li {
		display: block;
	}

	.localNav.localNav--spBlock ul li,
	.localNav.localNav--spBlock ul li a {
		display: block;
	}

	.localNav--block ul li {
		display: block;
	}

	.localNav--block ul li:first-child {
		margin-top: 0;
	}

	.localNav ul li a {
		padding-left: 20px;
	}

	.localNav--block ul li a {
		display: block;
		padding-left: 20px;
	}

	.localNav ul li a:after {
		width: 14px;
		height: 14px;
		border-top: 3px solid #858585;
		border-right: 3px solid #858585;
	}

	/*-----------------------------------------
	footer
	-----------------------------------------*/
	footer .footer__inner {
		width: auto;
		padding: 50px 40px 0 40px;
	}

	footer .footer__inner .footer__about {
		padding: 0;
	}

	footer .footer__inner .footer__about dt {
		margin-bottom: 20px;
		font-size: 36px;
	}

	footer .footer__inner .footer__about dd {
		line-height: 133%;
		font-size: 30px;
	}

	footer .footer__inner .footer__about dd .footer__about-note {
		margin-top: 1em;
		font-size: 28px;
	}

	footer .footer__sitemaps {
		display: none;
	}

	footer .sitemaps__navigation {
		padding: 90px 0;
	}

	footer .sitemaps__navigation > ul {
		float: none;
		width: auto;
	}

	footer .sitemaps__navigation > ul > li {
		margin-bottom: 20px;
	}

	footer .sitemaps__navigation > ul > li ul li a {
		margin-left: 15px;
		margin-top: 10px;
		line-height: 133%;
		font-size: 26px;
	}

	footer .sitemaps__navigation ul li a {
		padding-left: 25px;
		font-size: 30px;
	}

	footer .sitemaps__navigation ul li a:after {
		margin-top: -6px;
		width: 12px;
		height: 12px;
		border-top: 4px solid #858585;
		border-right: 4px solid #858585;
	}

	footer .sitemaps__navigation ul li a:hover {
		text-decoration: underline;
	}

	footer .footer__copyright {
		min-width: 0;
		border-width: 2px;
		margin-top: 72px;
		padding: 25px 0 25px 0;
		font-size: 30px;
	}

	/*-----------------------------------------
	pageTop
	-----------------------------------------*/
	.pageTop {
		display: none;
	}

	/*-----------------------------------------
	termlist_expanded
	-----------------------------------------*/
	.termlist_expanded {
		border-width: 2px;
		margin-top: 40px;
	}

	.termlist_expanded dt {
		border-width: 2px;
		float: none;
		padding: 40px 0 0 0;
	}

	.termlist_expanded dd {
		border-top: none;
		padding: 40px 0;
	}

	.termlist_expanded input[type="text"],
	.termlist_expanded textarea {
		border-radius: 10px;
		padding: 20px;
	}

	.termlist_expanded input[type="text"]::placeholder,
	.termlist_expanded textarea::placeholder {
		font-size: 38px;
	}

	.termlist_expanded .text_important {
		color: #FF3300;
	}

	.termlist_expanded .text_note {
		display: block;
		margin-top: 20px;
	}

	/*-----------------------------------------
	contact-attention
	-----------------------------------------*/
	.contact-attention {
		line-height: 180%;
		text-align: left;
		border-width: 2px;
	}

	/*-----------------------------------------
	privacyPolicy
	-----------------------------------------*/
	.privacyPolicy {
		margin: 40px 0 0 0;
		text-align: center;
	}

	.privacyPolicy .privacyPolicyInner {
		border-width: 2px;
		margin-top: 30px;
		padding: 30px;
		height: 400px;
		line-height: 140%;
		font-size: 30px;
	}

	/*-----------------------------------------
	portalIAMDescription
	-----------------------------------------*/
	.portalIAMDescription {
		margin: 40px 40px 0 40px;
		border-width: 2px;
		font-size: 24px;
	}
}