@charset "utf-8";

/* -----------------------------------------------------
スクリーン用スタイルファイル
----------------------------------------------------- */


/* ▼基本要素スタイル */
/* ----------------------------------------------------- */
html {
	width: 100%;
	overflow-y: scroll;
	font-family: sans-serif; /* 1 */
	font-family: Hiragino Sans, "ヒラギノ角ゴシック", Hiragino Kaku Gothic ProN, "ヒラギノ角ゴ ProN W3", Meiryo, "メイリオ", Roboto, "Droid Sans", Verdana, "ＭＳ Ｐゴシック", sans-serif;
	-ms-text-size-adjust: 100%; /* 2 */
	-webkit-text-size-adjust: 100%; /* 2 */
}

body {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	font-size: 18px !important;
	font-size: 87.5%;
	line-height: 1.75 !important;
	text-align: center;	/* center in winIE */
	font-family: Hiragino Sans, "ヒラギノ角ゴシック", Hiragino Kaku Gothic ProN, "ヒラギノ角ゴ ProN W3", Meiryo, "メイリオ", Roboto, "Droid Sans", Verdana, "ＭＳ Ｐゴシック", sans-serif;
	color: #000000;
	background-color: #ffffff !important;
}

* {
	font-family: inherit;
	font-size: 100%;
}

div,p, ul, ol, li, dl, dt, dd,
h1, h2, h3, h4, h5, h6,
form, input, table, tr, th, td,
object, param, embed {
	margin: 0;
	padding: 0;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

img {
	width: auto;
	max-width: 100%;
	margin: 0;
	padding: 0;
	border: 0 none #ffffff;
	vertical-align: top !important;
	vertical-align: middle;
	color: #666666;
}

*+html body img {
	vertical-align: middle !important;
}

strong {
	font-weight: bold;
}

em {
	font-style: normal;
}

em i {
	padding: 0.3em 0 0 0;
	font-style: normal;
	background-repeat: repeat-x;
	background-size: 1em 0.5em;
	background-position: top left;
	background-image: -webkit-gradient(radial,center center,0,center center,1.5,from(#ffffff),color-stop(0.5,#ffffff),color-stop(0.9,transparent),to(transparent));
	background-image: -webkit-radial-gradient(center center, 0.1em 0.1em, #ffffff, #ffffff 95%, transparent 95%, transparent);
	background-image: radial-gradient(0.1em 0.1em at center center, #ffffff, #ffffff 95%, transparent);
}

sup {
	font-size: 0.5em;
	vertical-align: top;
}

.hidden,
.is-hide {
	display: none;
}

.alignCenter {
	text-align: center;
}

.alignRight {
	text-align: right;
}

.alignLeft {
	text-align: left;
}

.clear {
	clear: both;
}

hr.clear {
	margin: 0;
	padding: 0;
	border: 0 none;
}

.floatCenter {
	margin-right: auto !important;
	margin-left: auto !important;
}

.floatRight {
	float: right;
}

.floatLeft {
	float: left;
}

.note {
	padding: 0 0 0 1em;
	font-size: 0.8333em;
}

p.note:before {
	content: "※";
	margin: 0 0 0 -1em;
}

.quot {
	padding: 0 0 0 1em;
}

.quot span {
	margin: 0 0 0 -1em;
}

.line {
	background: #dcff1d;
}

.underline {
	text-decoration: underline;
}

.large {
	font-size: 1.286em;
}

.small {
	font-size: 0.5em;
}

.red {
	color: #d50012;
}

.grayscale {
	-webkit-filter: grayscale(100%);
	   -moz-filter: grayscale(100%);
	    -ms-filter: grayscale(100%);
	     -o-filter: grayscale(100%);
	        filter: grayscale(100%);
}

.cursorDefault {
	cursor: default;
	pointer-events: none;
}





/* ▼リンク指定 */
/* ----------------------------------------------------- */
a:link {
	color: #2981b8;
	text-decoration: underline;
}

a:visited {
	color: #30140e;
	text-decoration: underline;
}

a:hover,
a:active {
	color: #009999;
	text-decoration: none;
}

a:link img,
a:visited img {
	opacity: 1.0;
}

a:hover img,
a:active img {
	opacity: 0.6;
}





/* ▼Noto Sans JP用 */
/* https://b.0218.jp/20150620044014.html */
/* ----------------------------------------------------- */
@font-face {
	font-family: 'Noto Sans Japanese';
	font-display: swap;
	font-style: normal;
	font-weight: 100;
	src: local('Noto Sans CJK JP Light'),
		url("../web-font/NotoSansSubsetJP-Thin.woff2") format("woff2"),
		url("../web-font/NotoSansSubsetJP-Thin.woff") format("woff"),
		url("../web-font/NotoSansSubsetJP-Thin.otf") format("opentype");
}

@font-face {
	font-family: 'Noto Sans Japanese';
	font-display: swap;
	font-style: normal;
	font-weight: 200;
	src: local('Noto Sans CJK JP Light'),
		url("../web-font/NotoSansSubsetJP-Light.woff2") format("woff2"),
		url("../web-font/NotoSansSubsetJP-Light.woff") format("woff"),
		url("../web-font/NotoSansSubsetJP-Light.otf") format("opentype");
}

@font-face {
	font-family: 'Noto Sans Japanese';
	font-display: swap;
	font-style: normal;
	font-weight: 300;
	src: local('Noto Sans CJK JP DemiLight'),
		url("../web-font/NotoSansSubsetJP-DemiLight.woff2") format("woff2"),
		url("../web-font/NotoSansSubsetJP-DemiLight.woff") format("woff"),
		url("../web-font/NotoSansSubsetJP-DemiLight.otf") format("opentype");
}

@font-face {
	font-family: 'Noto Sans Japanese';
	font-display: swap;
	font-style: normal;
	font-weight: 400;
	src: local('Noto Sans CJK JP Regular'),
		url("../web-font/NotoSansSubsetJP-Regular.woff2") format("woff2"),
		url("../web-font/NotoSansSubsetJP-Regular.woff") format("woff"),
		url("../web-font/NotoSansSubsetJP-Regular.otf") format("opentype");
}

@font-face {
	font-family: 'Noto Sans Japanese';
	font-display: swap;
	font-style: normal;
	font-weight: 500;
	src: local('Noto Sans CJK JP Medium'),
		url("../web-font/NotoSansSubsetJP-Medium.woff2") format("woff2"),
		url("../web-font/NotoSansSubsetJP-Medium.woff") format("woff"),
		url("../web-font/NotoSansSubsetJP-Medium.otf") format("opentype");
}

@font-face {
	font-family: 'Noto Sans Japanese';
	font-display: swap;
	font-style: normal;
	font-weight: 700;
	src: local('Noto Sans CJK JP Bold'),
		url("../web-font/NotoSansSubsetJP-Bold.woff2") format("woff2"),
		url("../web-font/NotoSansSubsetJP-Bold.woff") format("woff"),
		url("../web-font/NotoSansSubsetJP-Bold.otf") format("opentype");
}

@font-face {
	font-family: 'Noto Sans Japanese';
	font-display: swap;
	font-style: normal;
	font-weight: 900;
	src: local('Noto Sans CJK JP Black'),
		url("../web-font/NotoSansSubsetJP-Black.woff2") format("woff2"),
		url("../web-font/NotoSansSubsetJP-Black.woff") format("woff"),
		url("../web-font/NotoSansSubsetJP-Black.otf") format("opentype");
}





/* ▼Font Awesome用 */
/* ----------------------------------------------------- */
@font-face {
	font-family: 'FontAwesome';
	font-style: normal;
	font-weight: normal;
/*
	src: url('../web-font/fontawesome-webfont.eot?v=4.4.0');
	src: url('../web-font/fontawesome-webfont.eot?#iefix&v=4.4.0') format('embedded-opentype'),
		url('../web-font/fontawesome-webfont.woff2?v=4.4.0') format('woff2'),
		url('../web-font/fontawesome-webfont.woff?v=4.4.0') format('woff'),
		url('../web-font/fontawesome-webfont.ttf?v=4.4.0') format('truetype'),
		url('../web-font/fontawesome-webfont.svg?v=4.4.0#fontawesomeregular') format('svg');
*/
	src: url('../web-font/fontawesome-webfont_4.4.0.eot');
	src: url('../web-font/fontawesome-webfont_4.4.0.eot?#iefix') format('embedded-opentype'),
		url('../web-font/fontawesome-webfont_4.4.0.woff2') format('woff2'),
		url('../web-font/fontawesome-webfont_4.4.0.woff') format('woff'),
		url('../web-font/fontawesome-webfont_4.4.0.ttf') format('truetype'),
		url('../web-font/fontawesome-webfont_4.4.0.svg?#fontawesomeregular') format('svg');
}




/* ▼アイコン */
/* ----------------------------------------------------- */
.icon {
	margin: 1em;
	padding: 0;
	list-style-type: none;
}

.icon li {
	margin: 0 0 0.5em 0;
	padding: 0 0 0 2em;
}

.icon li:before {
	display: inline-block;
	width: 1em;
	margin: 0 0.75em 0 -1.75em;
	font-family: "FontAwesome";
	font-size: 1.143em;
	color: #979797;
	text-align: center !important;
}





/* ▼リンクボタン */
/* ----------------------------------------------------- */
p.btn {
	text-align: center;
	line-height: 1.75 !important;
}

p.btn a {
	position: relative;
	display: inline-block;
	margin: 0 0 2px 0;
	padding: 0.8em 4em 0.8em 3em !important;
	color: #322c26 !important;
	font-weight: 700;
	text-decoration: none;
	background: #eac688;
	border-radius: 6px;
	box-shadow: 0px 2px 0px 0px #b78253;
}

p.btn a::after {
	position: absolute;
	top: 50%;
	right: 1.5em;
	display: inline-block;
	content: "\f105";
	font-size: 1.2em;
	font-family: "FontAwesome";
	transform: translate(0,-50%);
}

p.btn a:link,
p.btn a:visited {
	opacity: 1.0;
	transition: all 0.5s;
}

p.btn a:hover,
p.btn a:active {
	opacity: 0.6;
}

p#closewindow {
	text-align: center;
}

p#closewindow span#windowclose {
	position: relative;
	display: inline-block;
	margin: 0 0 2px 0;
	padding: 0.8em 3em !important;
	color: #ffffff !important;
	font-weight: 700;
	text-decoration: none;
	cursor: pointer;
	background: #f85100;
	border-radius: 6px;
	opacity: 1.0;
	transition: all 0.5s;
}

p#closewindow span#windowclose:hover,
p#closewindow span#windowclose:active {
	opacity: 0.6;
}





/* ▼コンテナ */
/* ----------------------------------------------------- */
#main > svg {
	display: none;
}

section {
	padding: 3em 0;
	text-align: left;
}

.container,
#globalFooter nav {
	clear: both;
	min-height: 1px;
	height: auto !important;
	height: 1px;
	overflow: hidden;
	margin: 0 auto;
	padding: 0;
	/* box-sizing */
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	    -ms-box-sizing: border-box;
	     -o-box-sizing: border-box;
	        box-sizing: border-box;
}

header:after,
footer:after,
section:after,
.container:after,
.container:after {
	clear: both;
	display: table;
	content: "";
}

section h1,
section h2,
section h3,
section h4,
section h5,
section h6,
section table th,
section strong {
	font-family: "Noto Sans Japanese";
	font-weight: 700;
	line-height: 1.75;
}

header ul li,
section p,
section dl,
section ul li,
section ol li,
section table td,
section figure,
footer p,
footer ul li,
footer address {
	font-family: "Noto Sans Japanese";
	font-weight: 400;
	line-height: 1.75;
}

section p {
	margin: 1.5em 0;
}



@media screen and (min-width: 768px) {
	.section .row {
		display: table;
		table-layout: fixed;
	}

	.section h1,
	.section h2,
	.section h3 {
		font-size: 2.5em;
	}

	.section p,
	.section dl,
	.section ul li {
		font-size: 1em;
		font-size: 0.875em;
		font-size: 0.778em;
	}

	.section .headline h1,
	.section .headline h2 {
		font-size: 1em;
	}

	.section .headline h1 span,
	.section .headline h2 span {
		font-size: 1.778em;
	}

	.section .headline > div p {
		font-size: 0.889em;
	}

	.section .more ul li {
		width: 32.204%;
		margin: 0 1em;
	}

	.section .more ul li:first-child {
		display: block;
		width: 49.153%;
		margin: 0 auto 3em auto;
	}

	.section .more ul li a {
		font-size: 1.143em;
	}

	.section .more ul li:first-child a {
		font-size: 1.286em;
	}
}

@media screen and (max-width: 767px) {
	.container {
		width: 89.845%;
	}

	.section img {
		width: auto;
		max-width: 100%;
	}

	.section * + p {
		margin-top: 1em;
	}

	.section p + p {
		margin-top: 2em;
	}

	.section .more ul li:first-child {
		display: block;
		width: 92.279%;
		margin: 0 auto 3em auto;
	}
}



/* ▼notice */
/* ----------------------------------------------------- */
#notice {
	position:relative;
	padding: 0.5em 0;
	height: 2em;
	overflow: hidden;
	font-size: 12px;
	background: #f7f7f7;
}

#notice p {
	margin: 0;
	padding: 0 0 0 100%;
	font-size: 12px;
	display:inline-block;
	white-space:nowrap;
	-webkit-animation-name:marquee;
	-webkit-animation-timing-function:linear;
	-webkit-animation-duration:50s;
	-webkit-animation-iteration-count:infinite;
	-moz-animation-name:marquee;
	-moz-animation-timing-function:linear;
	-moz-animation-duration:50s;
	-moz-animation-iteration-count:infinite;
	-ms-animation-name:marquee;
	-ms-animation-timing-function:linear;
	-ms-animation-duration:50s;
	-ms-animation-iteration-count:infinite;
	-o-animation-name:marquee;
	-o-animation-timing-function:linear;
	-o-animation-duration:50s;
	-o-animation-iteration-count:infinite;
	animation-name:marquee;
	animation-timing-function:linear;
	animation-duration:50s;
	animation-iteration-count:infinite;
}

@-webkit-keyframes marquee {
	from   { -webkit-transform: translate(0%);}
	99%,to { -webkit-transform: translate(-100%);}
}

@-moz-keyframes marquee {
	from   { -moz-transform: translate(0%);}
	99%,to { -moz-transform: translate(-100%);}
}
@-ms-keyframes marquee {
	from   { -ms-transform: translate(0%);}
	99%,to { -ms-transform: translate(-100%);}
}
@-o-keyframes marquee {
	from   { -o-transform: translate(0%);}
	99%,to { -o-transform: translate(-100%);}
}
@keyframes marquee {
	from   { transform: translate(0%);}
	99%,to { transform: translate(-100%);}
}





/* ▼totalcare */
/* ----------------------------------------------------- */
#home #totalcare {
	background-color: #f5f4ef;
}

#home #totalcare .container h2 {
	text-align: center;
}



@media screen and (min-width: 767px) {
	#home #totalcare {
		padding: 0;
		background-image: url(/assets/img/home/totalcare_background.jpg);
		background-repeat: no-repeat;
		background-position: center bottom;
	}
	#home #totalcare .container {
		max-width: 1280px;
		min-height: 480px;
		background-image: url(/assets/img/home/totalcare_background.png);
		background-repeat: no-repeat;
		background-position: center bottom;
		box-sizing: border-box;
	}
	#home #totalcare .container h2 {
		padding: 2em 0 0 0;
		font-size: 1.667em;
	}
	#home #totalcare .container .wrap {
		width: 425px;
		padding: 3em 0 0 0;
		margin: 3em auto 0 auto;
		box-sizing: border-box;
	}
	#home #totalcare .container .wrap .bodytext p {
		margin: 0;
		font-size: 0.833em;
	}
	#home #totalcare .container .wrap .bodytext p.btn {
		margin: 1.5em 0 0 0;
		text-align: center;
	}
}

@media screen and (max-width: 766px) {
	#home #totalcare {
		padding: 0;
	}
	#home #totalcare .container {
		position: relative;
		overflow: visible;
		width: 100%;
		padding: 65.592vh 0 0 0;
		background-image: url(/assets/img/home/totalcare_head_bg.png);
		background-repeat: no-repeat;
		background-position: center top;
		background-size: 100% auto;
	}
	#home #totalcare .container h2 {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		height: 65.592vh;
		padding: 4em 0 0 0;
		font-size: 4.8vw;
		box-sizing: border-box;
	}
	#home #totalcare .container h2::after {
		content: "";
		display: block;
		width: 72%;
		margin: 1.5em auto;
		padding: 62.667% 0 0 0;
		background-image: url(/assets/img/home/totalcare_image_sp.svg),
						  url(/assets/img/home/totalcare_image_sp.png);
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 100% auto;
	}
	#home #totalcare .container .wrap {
		position: relative;
	}
	#home #totalcare .container .wrap .bodytext {
		padding: 2em 10.667vw;
		background-color: #ffffff;
		background-image: url(/assets/img/home/totalcare_body_bg.png);
		background-repeat: no-repeat;
		background-position: right bottom;
		background-size: 32% auto;
	}
	#home #totalcare .container .wrap .bodytext p {
		margin: 0 19.6vw 0 0;
		font-size: 3.733vw;
		font-weight: 700;
	}
	#home #totalcare .container .wrap .bodytext p.btn {
		margin: 1em 0 0 0;
	}
}





/* ▼problem */
/* ----------------------------------------------------- */
#problem #problemHead .container {
	position: relative;
	z-index: 1;
}

#problem #problemHead h2,
#problem #problemHead ul,
#problem #problemHead p {
	position: relative;
	z-index: 2;
}

#problem #problemHead h2 {
	margin: 0 0 1em 0;
	color: #4f2812;
}

#problem #problemHead ul {
	margin: 1em 0;
	padding: 0;
	list-style-type: none;
}

#problem #problemHead ul li {
	color: #c99053;
}

#problem #problemHead .container figure {
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 1;
	overflow: hidden;
	margin: 0;
	text-align: center;
}

#home #problem #problemBody {
	position: relative;
	z-index: 2;
}





/* ▼homeCustomer */
/* ----------------------------------------------------- */
#homeCustomer {
	background: #f5f5f5;
}

#homeCustomer .headcopy h2 {
	color: #4f2812;
}

#homeCustomer .headcopy h2 strong {
	color: #008045;
}

#homeCustomer .headcopy h3 {
	color: #755d49;
}

#homeCustomer .bodycopy .customer a {
	text-decoration: none;
}

#homeCustomer .bodycopy .customer figure {
	clear: both;
	margin: 0;
	padding: 0;
	line-height: 0;
	border: 1px solid #eaeaea;
	position: relative;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	/* box-sizing */
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	    -ms-box-sizing: border-box;
	     -o-box-sizing: border-box;
	        box-sizing: border-box;
}

#homeCustomer .bodycopy .customer figure img {
	width: 33.333%;
	width: calc( 100% / 3 );
}

_:-ms-lang(x), #homeCustomer .bodycopy .customer figure img {
	width: calc( 99.9% / 3 );
}

#homeCustomer .bodycopy .customer figure img:first-child {
	width: 100%;
}

#homeCustomer .bodycopy .customer figure:before {
	position: absolute;
	bottom: 20%;
	left: 31%;
	content: "\f04b";
	font-family: "FontAwesome";
	color: #4a8e59;
	margin: 0;
}

#homeCustomer .bodycopy .customer figure:after {
	position: absolute;
	bottom: 20%;
	right: 31%;
	content: "\f04b";
	font-family: "FontAwesome";
	color: #4a8e59;
	margin: 0;
}

#homeCustomer .bodycopy > p {
	margin: 2em 0 0 0;
	padding: 0;
	line-height: 0;
	text-align: center;
}

#homeCustomer .bodycopy .customer h4 {
	margin: 0.7em 0 0 0;
	font-weight: 400;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}

#homeCustomer .bodycopy .customer h4 span {
	padding: 0 0.7em;
	color: #4a8e59;
	border: 1px solid #4a8e59;
	background: #ffffff;
	border-radius: 1.5em;
	box-sizing: border-box;
}

#homeCustomer .bodycopy .customer h4 i {
	width: 100%;
	color: #333333;
	font-style: normal;
}

#homeCustomer .bodycopy .customer p {
	margin: 0;
	font-weight: 700;
	color: #333333;
}

#homeCustomer .bodycopy .customer ul {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	list-style-type: none;
	margin: 0.7em -5px 0 0;
}

#homeCustomer .bodycopy .customer ul li {
	margin: 0 7px 0.7em 0;
	font-size: 0.555em;
}

#homeCustomer .bodycopy iv.customer ul li span {
	display: block;
	padding: 0.3em 0.9em;
	font-size: 0.555em;
	font-size: 0.778em;
	font-weight: 700;
	color: #9f8058;
	text-decoration: none;
	border: 1px solid #9f8058;
	background: #ffffff;
	/* border-radius */
	-webkit-border-radius: 1.5em;
	   -moz-border-radius: 1.5em;
	    -ms-border-radius: 1.5em;
	     -o-border-radius: 1.5em;
	        border-radius: 1.5em;
}

#homeCustomer .bodycopy .btn a {
	padding: 0.8em 3em 0.8em 2em !important;
}



/* ▼homeInformation */
/* ----------------------------------------------------- */
#homeInformation {
	background: #efefef;
}

#homeInformation h2 {
	color: #d8d8d8;
	text-align: center;
}

#homeInformation h3 {
	margin: 1em 0 0 0;
	font-size: 1em;
	font-weight: 500;
	color: #322c26;
	text-align: center;
}

#homeInformation #informationWrap > :hover {
	opacity: 0.6;
}





/* ▼experienceOffer */
/* ----------------------------------------------------- */
.experienceOffer {
	position: relative;
	clear: both;
	padding: 0;
}

.experienceOffer > figure {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
	overflow: hidden;
	margin: 0;
	text-align: center;
}

.experienceOffer > figure img {
	width: auto !important;
	height: 100%;
	object-fit: cover;
}

.experienceOffer > .container {
	position:relative;
	z-index: 1;
}

.experienceOffer .container h2,
.experienceOffer .container p {
	margin: 0;
	padding: 0;
	line-height: 0;
}

.experienceOffer .container p a {
	position: relative;
	display: inline-block;
	margin: 0 0 2px 0;
	padding: 0.8em 4em 0.8em 3em !important;
	color: #322c26 !important;
	font-weight: 700;
	line-height: 1.75;
	text-decoration: none;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffdb80+0,ebaa00+100 */
	background: #ffdb80; /* Old browsers */
	background: -moz-linear-gradient(top,  #ffdb80 0%, #ebaa00 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  #ffdb80 0%,#ebaa00 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  #ffdb80 0%,#ebaa00 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffdb80', endColorstr='#ebaa00',GradientType=0 ); /* IE6-9 */
	border-radius: 3em;
	box-shadow: 0px 3px 0px 0px #b78253;
}

.experienceOffer .container p a {
	color: #ffffff !important;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffdb80+0,ebaa00+100 */
	background: #0e522d; /* Old browsers */
	background: -moz-linear-gradient(top,  #2d6e4b 0%, #0e522d 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  #2d6e4b 0%,#0e522d 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  #2d6e4b 0%,#0e522d 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#2d6e4b', endColorstr='#0e522d',GradientType=0 ); /* IE6-9 */
	box-shadow: 0px 3px 0px 0px #083a1c;
	text-align: center;
}

.experienceOffer .container p a::after {
	position: absolute;
	top: 50%;
	right: 1.5em;
	display: inline-block;
	content: "\f105";
	font-size: 1.2em;
	font-family: "FontAwesome";
	transform: translate(0,-50%);
}

.experienceOffer .container p a:link,
.experienceOffer .container p a:visited {
	opacity: 1.0;
	transition: all 0.5s;
}

.experienceOffer .container p a:hover,
.experienceOffer .container p a:active {
	opacity: 0.6;
}



/* 20220124 */
.experienceOffer .container ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
}

.experienceOffer .container ul li {
	width: 50%;
	padding: 0 0.5em;
	line-height: 0;
	box-sizing: border-box;
}

.experienceOffer .container ul li a {
	position: relative;
	display: inline-block;
	display: block;
	padding: 0.8em 2em !important;
	line-height: 1.5;
	text-decoration: none;
	border-bottom: 3px solid #666666;
	border-radius: 3em;
}

.experienceOffer .container ul li a::after {
	position: absolute;
	top: 50%;
	right: 1em;
	display: inline-block;
	content: "\f105";
	font-size: 1.2em;
	font-family: "FontAwesome";
	transform: translate(0,-50%);
}

.experienceOffer .container ul .male_reserve a {
	color: #ffffff;
	background: linear-gradient(to bottom, #2d6e4b 0%,#0e522d 100%);
}

.experienceOffer .container ul .female_reserve a {
	color: #000000;
	background: #ebac05;
}

.experienceOffer .container ul li a div {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
}

.experienceOffer .container ul li a div strong {
	width: 100%;
	line-height: 1.5;
	text-align: center;
}

.experienceOffer .container ul li a div i {
	width: 100%;
	font-size: 0.8em;
	font-style: normal;
	text-align: center;
}



/* 20230222 */
.experienceOffer .container {
	padding: 20px 0 !important;
}

.experienceOffer .container ul {
	justify-content: center !important;
}

.experienceOffer .container .line_reserve a {
	margin-top: 10px;
	color: #ffffff;
	background: #4cc764;
	background: #00B900;
}

@media screen and (max-width: 767px) {
	.experienceOffer .container .line_reserve {
		width: 55% !important;
	}
}





/* ▼special */
/* ----------------------------------------------------- */
#special {
	background: #efefef;
}

#special h2 {
	color: #d8d8d8;
	text-align: center;
}

#special h3 {
	margin: 1em 0 0 0;
	font-size: 1em;
	font-weight: 500;
	color: #322c26;
	text-align: center;
}

#special ul {
	margin: 2em 0 0 0;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	list-style-type: none;
}

#special ul li {
	padding: 0;
	line-height: 0;
}

#special p {
	text-align: center;
}





/* ▼news */
/* ----------------------------------------------------- */
#news {
	background: #efefef;
}

#news h2 {
	margin: 0 0 1.5em 0;
	color: #222222;
	text-align: center;
}

#news dl {
	color: #4d4d4d;
}

#news dl dt {
	margin: 1.2em 0 0.5em 0;
	color: #4d4d4d;
}

#news dl dd {
	margin: 0.5em 0 1.2em 0;
	padding: 0 0 1em 0;
	color: #4d4d4d;
	border-bottom: 1px solid #d8d8d8;
}

#news .company_only,
#news .company_only + dd,
#news .company_only + dd + dd,
#news .sdgs_only,
#news .sdgs_only + dd,
#news .sdgs_only + dd + dd {
	display: none;
}

#news p {
	text-align: center;
	color: #4d4d4d;
}

#news p a:after {
	content: " ＞";
}

#news ul {
	margin: 2em 0 0 0;
	list-style-type: none;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}

#news ul li {
	width: 45%;
	border: 1px solid #a9a9a9;
	background: #ffffff;
	border-radius: 6px;
}

#news ul li a {
	position: relative;
	display: block;
	padding: 1em;
	color: #000000;
	font-weight: 700;
	text-decoration: none;
	text-align: center;
}

#news ul li a:link,
#news ul li a:visited {
	opacity: 1.0;
	transition: all 0.5s;
}

#news ul li a:hover,
#news ul li a:active {
	opacity: 0.6;
}

#news ul li a::after {
	content: "\f105";
	font-family: "FontAwesome";
	position: absolute;
	top: 50%;
	right: 1em;
	width: 1em;
	height: 1em;
	color: #aaaaaa;
	line-height: 1;
	transform: translate(0, -50%);
}





/* ▼keyvisual */
/* ----------------------------------------------------- */
#keyvisual {
	position: relative;
}

#keyvisual > figure {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
	overflow: hidden;
	margin: 0;
	text-align: center;
}

#keyvisual > figure img {
	width: auto !important;
	object-fit: cover;
}

#keyvisual > .container {
	position:relative;
	z-index: 1;
}

#keyvisual h1:before,
#keyvisual h2:before {
	content: "";
	display: block;
	background: url(../img/common/ci_horizontal.svg) no-repeat center center;
	background-size: 100% auto;
}





/* ▼breadcrumb */
/* ----------------------------------------------------- */
#breadcrumb {
	clear: both;
	min-height: 1px;
	height: auto !important;
	height: 1px;
	margin: 0;
}

#breadcrumb:after {
	clear: both;
	display: table;
	content: "";
	border: 0 none;
}

#breadcrumb ol {
	margin: 0.5em 0;
	padding: 0;
	font-size: 12px;
	color: #858585;
	list-style-type: none;
	text-align: left;
}

#breadcrumb ol li {
	display: inline-block;
	margin: 0 0.3em 0 0;
	color: #858585;
}

#breadcrumb ol li:after {
	content: ">";
	margin: 0 0 0 0.5em;
}

#breadcrumb ol li.current-crumb:after,
#breadcrumb ol li:last-child:after {
	display: none;
}

#breadcrumb ol li a {
	color: #858585;
	text-decoration: none;
}

#breadcrumb ol li.current-crumb a {
	pointer-events: none;
}

#breadcrumb ol li.current-crumb a strong {
	font-weight: normal;
}





/* ▼globalFooter */
/* ----------------------------------------------------- */
#globalFooter {
	margin: 0;
	text-align: left;
	color: #ffffff;
	background: #322c26;
}

#globalFooter a {
	color: #ffffff !important;
	text-decoration: none;
}

#globalFooter dl dt,
#globalFooter dl dd,
#globalFooter address {
	font-style: normal;
	font-family: "Noto Sans Japanese";
	font-weight: 400;
}



iframe[name="google_conversion_frame"] {
	display: none;
}





/* ▼ページトップ */
/* ----------------------------------------------------- */
#pagetop {
	position: fixed;
	right: 0;
	z-index: 9999;
}

#pagetop p {
	margin: 0;
	padding: 0;
}

#pagetop p a {
	display: block;
	width: 3em;
	height: 4.5em;
	padding: 1.5em 1em 2em 1em;
	text-decoration: none;
	background: #000000;
	background: rgba(0, 0, 0, 0.7);
	/* border-radius */
	-webkit-border-radius: 5px 0 0 5px;
	   -moz-border-radius: 5px 0 0 5px;
	    -ms-border-radius: 5px 0 0 5px;
	     -o-border-radius: 5px 0 0 5px;
	        border-radius: 5px 0 0 5px;
	/* box-sizing */
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	    -ms-box-sizing: border-box;
	     -o-box-sizing: border-box;
	        box-sizing: border-box;
}

#pagetop p a:before {
	content: "\f077";
	font-family: "FontAwesome";
	display: inline-block;
	width: 1em;
	height: 1em;
	color: #ffffff;
}

#pagetop a:hover,
#pagetop a:active {
	-moz-opacity: 0.6;
	opacity: 0.6;
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=60);  /* For IE 5-7 */
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; /* For IE 8 */
}

#pagetop a span {
	display: none;
}

#pagetop a img {
	width: auto;
	max-width: 100%;
}



@media screen and (min-width: 768px) {

}

@media screen and (max-width: 767px) {
	#pagetop {
		width: 12%;
		bottom: -1em;
	}
}





/* ▼計測タグ制御 */
/* ----------------------------------------------------- */
#_smartnews_ads_conversion_img_ao1q2 {
	position: absolute;
	top: -999px;
	left: -999px;
}





/* ▼TOPページポップアップ */
/* ----------------------------------------------------- */
#popup {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 99990;
	opacity: 0;
	visibility: hidden;
	transition: .6s;
}

#popup.show {
	opacity: 1;
	visibility: visible;
}

#popup #popup_inner {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	background: transparent;
	z-index: 2;
	overflow: hidden;
}

#popup #close_inner {
	position: relative;
	width: 100%;
	height: 15vh;
	z-index: 10;
	margin: 0 auto;
	cursor: pointer;
}

#popup #close_inner #close_btn {
	position: absolute;
	right: 5%;
	bottom: 1vh;
	width: 30px;
	height: 30px;
	cursor: pointer;
	z-index: 10;
	padding: 5px;
}

#popup #close_inner #close_btn img {
	width: 100%;
}

#popup #popup_bg {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(35,24,21,0.7);
	z-index: 1;
	cursor: pointer;
}


#callcenter,
#countermeasure {
	text-align: center;
	background: #ffffff;
}

#callcenter h2,
#callcenter p,
#countermeasure h2,
#countermeasure p {
	text-align: center;
}

#callcenter h2 span,
#countermeasure h2 span {
	display: block;
	width: max-content;
	margin-left: auto;
	margin-right: auto;
	padding: 0.5em 1em;
	padding: 0.8em 3em;
	color: #ffffff;
	border: 1px solid #000000;
	background: linear-gradient(to bottom, #2d6e4b 0%,#0e522d 100%);
	cursor: pointer;
	border-radius: 2em;
	border-radius: 6px;
}

#callcenter h2 span::before,
#countermeasure h2 span::before {
	content: "";
	display: inline-block;
	width: 1em;
	height: 1em;
	margin: 0 1em 0 0;
	vertical-align: middle;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='20' width='20' fill='rgb(255,255,255)' fill-opacity='1'%3E%3Cpolygon points='0,0 10,15 20,0'%3E%3C/polygon%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: auto 100%;
}

#callcenter h2 span.open::before,
#countermeasure h2 span.open::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='20' width='20' fill='rgb(255,255,255)' fill-opacity='1'%3E%3Cpolygon points='0,15 10,0 20,15'%3E%3C/polygon%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: auto 100%;
}

#callcenter h2 span:link,
#callcenter h2 span:visited,
#countermeasure h2 span:link,
#countermeasure h2 span:visited {
	opacity: 1.0;
}

#callcenter h2 span:hover,
#callcenter h2 span:active,
#countermeasure h2 span:hover,
#countermeasure h2 span:active {
	opacity: 0.6;
}

#countermeasure p img {
	background: #ffffff;
}





/* ▼返金制度バナーstart */
/* ----------------------------------------------------- */
.banner_promise {
	padding-top: 4.5em;
}

#guide .banner_promise {
	padding-top: 0;
}

.banner_promise .container {
	overflow: visible;
}

.banner_promise .container p {
	margin: 0;
	text-align: center;
}

.banner_promise .container p a {
	position: relative;
	display: block;
	margin: 0 auto;
}

.banner_promise .container p a::after {
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	background-image: url(../img/common/banner_promise.png);
}



@media screen and (min-width: 768px) {
	.banner_promise .container p a {
		width: 670px;
	}
	.banner_promise .container p a::after {
		width: 275px;
		height: 230px;
	}
}

@media screen and (max-width: 767px) {
	.banner_promise .container p a {
		width: 100%;
	}
	.banner_promise .container p a::after {
		width: 41.045%;
		/* height: 34.329%; */
		height: 124%;
		background-size: 100% auto;
	}
}




/* ▼共通セクション（common_customer）start */
/* ----------------------------------------------------- */
#common_customer {
	background: #f9f9f9;
}
#common_customer .headcopy h2 {
	color: #4f2812;
	text-align: center;
	margin: 0 0 1em 0;
	line-height: 1.5;
}
#common_customer .headcopy h2 .color {
	color: #008045;
}
#common_customer .bodycopy .customer a {
	text-decoration: none;
}
#common_customer .bodycopy .customer figure {
	clear: both;
	margin: 0;
	padding: 0;
	line-height: 0;
	border: 1px solid #eaeaea;
	position: relative;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	/* box-sizing */
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	    -ms-box-sizing: border-box;
	     -o-box-sizing: border-box;
	        box-sizing: border-box;
}

#common_customer .bodycopy .customer figure img {
	width: 33.333%;
	width: calc( 100% / 3 );
}

#common_customer .bodycopy .customer figure img:first-child {
	width: 100%;
}

#common_customer .bodycopy .customer figure:before {
	position: absolute;
	bottom: 20%;
	left: 31%;
	content: "\f04b";
	font-family: "FontAwesome";
	color: #4a8e59;
	margin: 0;
}

#common_customer .bodycopy .customer figure:after {
	position: absolute;
	bottom: 20%;
	right: 31%;
	content: "\f04b";
	font-family: "FontAwesome";
	color: #4a8e59;
	margin: 0;
}

#common_customer .bodycopy > p {
	margin: 2em 0 0 0;
	padding: 0;
	line-height: 0;
	text-align: center;
}

#common_customer .bodycopy .customer h3,
#common_customer .bodycopy .customer h4 {
	margin: 0.7em 0 0 0;
	font-weight: 400;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}

#common_customer .bodycopy .customer h3 span,
#common_customer .bodycopy .customer h4 span {
	padding: 0 0.7em;
	color: #4a8e59;
	border: 1px solid #4a8e59;
	background: #ffffff;
	/* border-radius */
	-webkit-border-radius: 1.5em;
	   -moz-border-radius: 1.5em;
	    -ms-border-radius: 1.5em;
	     -o-border-radius: 1.5em;
	        border-radius: 1.5em;
	/* box-sizing */
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	    -ms-box-sizing: border-box;
	     -o-box-sizing: border-box;
	        box-sizing: border-box;
}

#common_customer .bodycopy .customer h3 i,
#common_customer .bodycopy .customer h4 i {
	color: #333333;
	font-style: normal;
}
#common_customer .bodycopy .customer p {
	margin: 0;
	font-weight: 700;
	color: #333333;
}

#common_customer .bodycopy .customer ul {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	list-style-type: none;
	margin: 0.7em -5px 0 0;
}

#common_customer .bodycopy .customer ul li {
	margin: 0 7px 0.7em 0;
	font-size: 0.555em;
}

#common_customer .bodycopy .customer ul li span {
	display: block;
	padding: 0.3em 0.9em;
	font-size: 0.555em;
	font-size: 0.778em;
	font-weight: 700;
	color: #9f8058;
	text-decoration: none;
	border: 1px solid #9f8058;
	background: #ffffff;
	/* border-radius */
	-webkit-border-radius: 1.5em;
	   -moz-border-radius: 1.5em;
	    -ms-border-radius: 1.5em;
	     -o-border-radius: 1.5em;
	        border-radius: 1.5em;
}





/* column_supervisor */
/* ----------------------------------------------------- */
#column_supervisor {
	margin: 0 auto;
	border: 2px solid #0e522d;
	box-sizing: border-box;
}

#column #mainContents .container #column_supervisor {
	margin: 3em auto;
}


#column_supervisor h3 span {
	display: inline-block;
	padding: 0.1em 1.5em;
	color: #ffffff;
	text-align: center;
	background: #0e522d;
}

#column_supervisor .supervisor {
	display: grid;
	grid-template-rows: repeat(2, auto);
	grid-column-gap: 1em;
	grid-row-gap: 1em;
}

#column_supervisor .supervisor a {
	color: #000000;
	text-decoration: none;
}

#column_supervisor .supervisor h4 {
	grid-area: 1 / 2 / 2 / 3;
	margin: 0;
}

#column_supervisor .supervisor div.profile {
	grid-area: 2 / 2 / 3 / 3;
	margin: 0;
}

#column_supervisor .supervisor div.profile p:first-child {
	margin-top: 0;
}

#column_supervisor .supervisor dl dt {
	font-weight: 700;
}

#column_supervisor .supervisor dl dd {
	margin-left: 1em;
}

#column_supervisor .supervisor ul {
	text-align: left;
}

#column_supervisor .supervisor ul li {
	display: inline-block;
	margin: 0 1em 0 0;
	list-style-type: none;
}

#column_supervisor .supervisor figure {
	grid-area: 1 / 1 / 3 / 2;
	margin: 0;
}

#column_supervisor .supervisor figure img {
	border-radius: 50%;
}



@media screen and (min-width: 767px) {
	#column_supervisor {
		width: 79.611%;
		width: 64.078%;
	}
	#column_supervisor h3 {
		font-size: 1em;
	}
	#column_supervisor .supervisor {
		padding: 1.5em 2em;
		padding: 0 2em 1.5em 2em;
		grid-template-columns: 120px auto;
	}
	#column_supervisor .supervisor h4 {
		font-size: 1em;
	}
	#column_supervisor .supervisor h4 span {
		font-size: 0.9em;
	}
	#column_supervisor .supervisor p,
	#column_supervisor .supervisor ul li,
	#column_supervisor .supervisor dl dt,
	#column_supervisor .supervisor dl dd {
		font-size: 0.778em;
		font-size: 0.778rem;
	}
	#column_supervisor .supervisor figure {
		margin-top: 1.5em;
	}
}

@media screen and (max-width: 766px) {
	#column_supervisor {
		width: 89.333%;
	}
	#column_supervisor h3 {
		font-size: 3.467vw;
	}
	#column_supervisor .supervisor {
		padding: 1em 1.5em;
		grid-template-columns: 45px auto;
	}
	#column_supervisor .supervisor h4 {
		font-size: 3.467vw;
	}
	#column_supervisor .supervisor h4 span {
		font-size: 3.467vw;
	}
	#column_supervisor .supervisor p,
	#column_supervisor .supervisor ul li,
	#column_supervisor .supervisor dl dt,
	#column_supervisor .supervisor dl dd {
		font-size: 3.467vw;
	}
}





/* column_author */
/* ----------------------------------------------------- */
#column_author,
.column_author {
	margin: 0 auto;
	border: 2px solid #0e522d;
	box-sizing: border-box;
}

#column #mainContents .container #column_author,
#column #mainContents .container .column_author {
	margin: 3em auto;
}


#column_author h3 span,
.column_author h3 span {
	display: inline-block;
	padding: 0.1em 1.5em;
	color: #ffffff;
	text-align: center;
	background: #0e522d;
}

#column_author .author,
.column_author .author {
	display: grid;
	grid-template-rows: repeat(2, auto);
	grid-column-gap: 1em;
	grid-row-gap: 1em;
}

#column_author .author h4,
.column_author .author h4 {
	grid-area: 1 / 2 / 2 / 3;
	margin: 0;
}

#column_author .author p,
.column_author .author p {
	grid-area: 2 / 2 / 3 / 3;
	margin: 0;
}

#column_author .author figure,
.column_author .author figure {
	grid-area: 1 / 1 / 3 / 2;
	margin: 0;
}

#column_author .author figure img,
.column_author .author figure img {
	border-radius: 50%;
}



@media screen and (min-width: 767px) {
	#column_author,
	.column_author {
		width: 79.611%;
		width: 64.078%;
	}
	#column_author h3,
	.column_author h3 {
		font-size: 1em;
	}
	#column_author .author,
	.column_author .author {
		padding: 1.5em 2em;
		padding: 0 2em 1.5em 2em;
		grid-template-columns: 120px auto;
	}
	#column_author .author h4,
	.column_author .author h4 {
		font-size: 1em;
	}
	#column_author .author h4 span,
	.column_author .author h4 span {
		font-size: 0.9em;
	}
	#column_author .author p,
	.column_author .author p {
		font-size: 0.778em;
	}
	#column_author .author figure,
	.column_author .author figure {
		margin-top: 1.5em;
	}
}

@media screen and (max-width: 766px) {
	#column_author,
	.column_author {
		width: 89.333%;
	}
	#column_author h3,
	.column_author h3 {
		font-size: 3.467vw;
	}
	#column_author .author,
	.column_author .author {
		padding: 1em 1.5em;
		grid-template-columns: 45px auto;
	}
	#column_author .author h4,
	.column_author .author h4 {
		font-size: 3.467vw;
	}
	#column_author .author h4 span,
	.column_author .author h4 span {
		font-size: 3.467vw;
	}
	#column_author .author p,
	.column_author .author p {
		font-size: 3.467vw;
	}
}




/* column_category */
/* ----------------------------------------------------- */
#column_category {
	margin: 0 auto;
	box-sizing: border-box;
}

#column_author + #column_category {
	margin-top: 2em;
}

#column_category h3 {
	margin: 0 0 1em 0;
	border-bottom: 0.1em solid #cccccc;
}

#column_category ul {
	margin-left: -10px;
	margin-right: -10px;
	padding: 0 5px;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}

#column_category ul li {
	margin: 5px;
	list-style-type: none;
}

#column_category ul li a {
	position: relative;
	display: block;
	color: #000000;
	text-decoration: none;
}

#column_category ul li a span {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	padding: 0.5em 0;
	font-weight: 700;
	text-align: center;
	background: rgba(255, 255, 255, 0.75);
	transform: translate(0,-50%);
}



@media screen and (min-width: 767px) {
	#column_category {
		width: 64.078%;
	}
	#column_category ul li {
		width: calc( 25% - 10px );
	}
}

@media screen and (max-width: 766px) {
	#column_category {
		width: 89.333%;
	}
	#column_category ul li {
		width: calc( 50% - 10px );
	}
}




/* column_recent */
/* ----------------------------------------------------- */
#column_recent {
	margin: 0 auto;
	box-sizing: border-box;
}

#column_category + #column_recent {
	margin-top: 2em;
}

#column_recent h3 {
	border-bottom: 0.1em solid #cccccc;
}

#column_recent ul {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	align-items: stretch;
}

#column_recent ul li {
	list-style-type: none;
}

#column_recent ul li a {
	position: relative;
	display: block;
	text-decoration: none;
}

#column_recent ul li a figure {
	margin: 0;
	padding: 0;
	line-height: 0;
}

#column_recent ul li a p {
	margin: 0;
	padding: 0.5em;
	font-weight: 700;
	vertical-align: top;
	box-sizing: border-box;
}

#column_recent ul li a p:before {
	content: attr(data-vol);
	display: block;
	width: 5.5em;
	width: 7em;
	margin: 0 0 0.5em 0;
	padding: 0.2em 1em;
	font-weight: 500;
	text-align: center;
	color: #ffffff;
	background: #e30012;
	box-sizing: border-box;
}




@media screen and (min-width: 767px) {
	#column_recent {
		width: 64.078%;
	}
	#column_recent h3 {
		margin: 0 0 1em 0;
	}
	#column_recent ul {
		margin-left: -10px;
		margin-right: -10px;
		padding: 0 5px;
	}
	#column_recent ul li {
		width: calc( 33% - 10px );
		margin: 5px;
		border: 1px solid #c2c2c2;
	}
	#column_recent ul li  p {
		font-size: 0.778em;
	}
}

@media screen and (max-width: 766px) {
	#column_recent {
		width: 89.333%;
	}
	#column_recent ul li {
		width: 100%;
	}
	#column_recent ul li a {
		display: table;
		width: 100%;
		table-layout: fixed;
		text-decoration: none;
		box-sizing: border-box;
		border-collapse: separate;
		border-spacing: 4vw;
		border-bottom: 0.1em solid #cccccc;
	}
	#column_recent ul li a figure {
		position: relative;
		overflow: hidden;
		display: table-cell;
		width: 29.733vw;
		padding: 18.8% 0 0 0;
		vertical-align: middle;
		box-sizing: border-box;
	}
	#column_recent ul li a figure img {
		position: absolute;
		top: 50%;
		left: 50%;
		width: auto !important;
		height: 100% !important;
		object-fit: cover;
		transform: translate(-50%,-50%);
		transition: 0.3s;
	}
	#column_recent ul li a p {
		display: table-cell;
		padding: 0;
		font-size: 3.467vw;
		line-height: 1.5;
	}
	#column_recent ul li a p:before {
		font-size: 2.666vw;
	}
}





/* ▼401・403・404 */
/* ----------------------------------------------------- */
#error #keyvisual {
	display: none;
}
#error #mainContents h3 {
	font-weight: bold;
	color: #4f2812;
	text-align: center;
	margin: 0 0 1.5em 0;
}
@media screen and (min-width: 767px) {
	#error #mainContents h3 {
		font-size: 2em;
	}
	#error #mainContents p {
		font-size: 0.833em;
		text-align: center;
		margin: 0 0 2em 0;
	}
}

@media screen and (max-width: 766px) {
	#error #mainContents .container {
		padding: 2em 0 2em 0;
	}
	#error #mainContents h3 {
		font-size: 5.333vw;
	}
	#error #mainContents p {
		width: 74.66%;
		margin: 0 auto 2em auto;
		font-size: 3.733vw;
		text-align: center;
	}
}


