@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@300;400;500;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@300;400;500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700&display=swap');

/*------------------------------------------------------------
	デフォルトスタイル
------------------------------------------------------------*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	outline: 0;
	font-size: 1em;
}

html {
	font-size: 62.5%;
}

@media all and (max-width: 389px) {
	html {
		font-size: 56%;
	}
}

body,
table,
input,
textarea,
select,
option {
	font-family: 'Noto Sans JP', sans-serif;
}

article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary {
	display: block;
}

ol,
ul {
	list-style: none;
}

blockquote,
q {
	quotes: none;
}

:focus {
	outline: 0;
}

ins {
	text-decoration: none;
}

del {
	text-decoration: line-through;
}

img {
	vertical-align: top;
	max-width: 100%;
	height: auto;
}

a,
a:link {
	color: #777E86;
	text-decoration: none;
}

a:visited {
	color: #777E86;
}

a:hover {
	color: #777E86;
}

a:active {
	color: #777E86;
}

a,
a img {
	-webkit-transition: .3s;
	transition: .3s;
}

/*------------------------------------------------------------
	レイアウト
------------------------------------------------------------*/
body {
	color: #777E86;
	font-size: 1.4rem;
	line-height: 1.5;
	text-size-adjust: none;
	-webkit-text-size-adjust: none;
	background-color: #f6f6f8;
}

body.fixed {
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	box-sizing: border-box;
	overflow-y: scroll;
}

p {
	line-height: 2;
	letter-spacing: 0.05em;
}

#container {
	text-align: left;
}

#main {
	display: block;
}

a[href^="tel:"] {
	cursor: default;
	pointer-events: none;
}

@media all and (min-width: 897px) {
	.sp {
		display: none !important;
	}
}

@media all and (max-width: 896px) {

	a:hover,
	a:hover img {
		opacity: 1 !important;
	}

	.pc {
		display: none !important;
	}

	a[href^="tel:"] {
		cursor: pointer;
		pointer-events: auto;
	}
}

/*------------------------------------------------------------
	ヘッダー
------------------------------------------------------------*/
#gHeader {
	padding: 36px 50px;
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99;
	box-sizing: border-box;
}

#gHeader .logo {
	width: 200px;
}

#gHeader.open {
	opacity: 0;
}

@media all and (max-width: 896px) {
	#gHeader {
		padding: 43px 30px;
	}
}

@media all and (max-width: 389px) {
	#gHeader {
		padding: 43px 20px;
	}

	#gHeader .logo {
		width: 190px;
	}
}

/* menu */
.menu {
	position: fixed;
	top: 43px;
	right: 30px;
	height: 14px;
	width: 40px;
	cursor: pointer;
	z-index: 99;
	transition: opacity .25s ease;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
}

.menu.active .top {
	-webkit-transform: translateY(6px) translateX(0) rotate(-18deg);
	-ms-transform: translateY(6px) translateX(0) rotate(-18deg);
	transform: translateY(6px) translateX(0) rotate(-18deg);
	background: #777E86;
}

.menu.active .bottom {
	-webkit-transform: translateY(-6px) translateX(0) rotate(18deg);
	-ms-transform: translateY(-6px) translateX(0) rotate(18deg);
	transform: translateY(-6px) translateX(0) rotate(18deg);
	background: #777E86;
}

.menu span {
	background: #777E86;
	border: none;
	height: 1px;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	-webkit-transition: all .35s ease;
	transition: all .35s ease;
	cursor: pointer;
}

.menu span:nth-of-type(2) {
	top: 13px;
}

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

.headerBox .logo {
	width: 200px;
}

.headerBox .menu {
	position: relative;
	top: auto;
	right: auto;
	margin-top: 6px;
}

@media all and (min-width: 897px) {
	.headerBox {
		position: absolute;
		top: 43px;
		right: 30px;
	}

	.headerBox .menu {
		margin-top: 0;
	}
}

@media all and (max-width: 896px) {
	.menu {
		top: 50px;
	}

	.headerBox {
		margin: 0 -10px 82px;
	}
}

@media all and (max-width: 389px) {
	.menu {
		right: 20px;
	}
}

/* menuBox */
.menuBox {
	width: 100%;
	height: 100%;
	position: fixed;
	bottom: 0;
	left: 0;
	background-color: rgba(255, 255, 255, 0.6);
	box-sizing: border-box;
	z-index: 100;
	backdrop-filter: blur(5px);
	overflow-y: auto;
	display: none;
}

.menuBox .innerBox {
	margin: 0 auto;
	padding: 127px 50px;
	max-width: 1200px;
	box-sizing: border-box;
	display: flex;
}

.menuBox .subBox {
	position: relative;
}

.menuBox .naviUl {
	width: 550px;
	font-size: 4rem;
	line-height: 1;
	font-family: futura-pt, sans-serif;
	letter-spacing: 0.17em;
}

.menuBox .naviUl li {
	margin-bottom: 61px;
}

.menuBox .naviUl li:last-child {
	margin-bottom: 0;
}

.menuBox .rightBox {
	flex: 1;
	display: flex;
	align-items: flex-end;
}

.menuBox .snsBox {
	margin-bottom: -6px;
	padding: 0 0 3px 29px;
	border-left: 1px solid #777E86;
}

.menuBox .linkUl {
	font-size: 1.6rem;
	letter-spacing: 0.08em;
	font-family: futura-pt, sans-serif;
}

.menuBox .linkUl li {
	margin-bottom: 12px;
}

.menuBox .linkUl li:last-child {
	margin-bottom: 0;
}

.menuBox .linkUl a {
	color: #777E86;
}

.menuBox .snsUl {
	margin-bottom: 14px;
	display: flex;
	flex-wrap: wrap;
}

.menuBox .snsUl li {
	margin-right: 10px;
	width: 40px;
}

.menuBox .snsUl li:last-child {
	margin-right: 0;
}

.menuBox .copyright {
	color: #777E86;
	font-size: 0.9rem;
	white-space: nowrap;
	transform: rotate(90deg);
	position: absolute;
	bottom: 172px;
	right: -79px;
	letter-spacing: 0.2em;
}

@media all and (min-width: 897px) {
	.menuBox .linkUl a:hover {
		opacity: 0.7;
	}

	.menuBox .snsUl a:hover {
		opacity: 0.7;
	}

	.menuBox .naviUl a:hover {
		opacity: 0.7;
	}
}

@media all and (max-width: 896px) {
	.menuBox .innerBox {
		padding: 47px 40px;
		display: block;
	}

	.menuBox .naviUl {
		margin-bottom: 81px;
		width: auto;
		font-size: 3rem;
	}

	.menuBox .naviUl a {
		color: #777E86;
	}

	.menuBox .naviUl li {
		margin-bottom: 48px;
	}

	.menuBox .copyright {
		bottom: 138px;
		right: -103px;
	}
}

@media all and (max-width: 389px) {
	.headerBox {
		margin: 0 -20px 82px;
	}
}

/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/
#gFooter {
	padding: 77px 20px 99px;
	color: #fff;
	margin-top: 198px;
	background-color: #777E86;
}

#gFooter a {
	color: #fff;
}

#gFooter .fBox {
	margin: 0 auto;
	max-width: 1200px;
}

#gFooter .flexBox {
	margin-bottom: 147px;
	display: flex;
	justify-content: space-between;
}

#gFooter .fNavi {
	margin-top: -2px;
	flex: 1;
	display: flex;
/*	justify-content: flex-end;*/
	font-size: 1.35rem;
	letter-spacing: 0.2em;
	font-family: futura-pt, sans-serif;
	font-weight: 400;
	max-width: 677px;
    flex-wrap: wrap;
	line-height: 2;
}

#gFooter .fNavi li {
	margin-left: 49px;
}

#gFooter .fLogo {
	width: 300px;
}

#gFooter .addressUl {
	display: flex;
	flex-wrap: wrap;
	font-size: 1.3rem;
	letter-spacing: 0.1em;
}

#gFooter .addressUl p {
	letter-spacing: 0.1em;
}

#gFooter .addressUl>li {
	box-sizing: border-box;
	width: 400px;
	padding: 0 30px;
	margin-bottom: 50px;
	/* margin-bottom: 30px;
	margin-right: 140px; */
	position: relative;
}

#gFooter .addressUl>li:nth-child(3n) {
	margin-right: 0;
}

#gFooter .addressUl>li:nth-child(3n-2):before {
	width: 1px;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: #999;
	content: "";
}

#gFooter .addressUl>li::after {
	width: 1px;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
	background-color: #999;
	content: "";
}



#gFooter .addressUl .ttl {
	margin-bottom: 1px;
	font-weight: 500;
	letter-spacing: 0.16em;
}

#gFooter .addressUl img {
	width: 18px;
	position: absolute;
	left: 25px;
	display: inline-block;
	vertical-align: middle;
}

#gFooter .addressUl p {
	margin-bottom: 5px;
}

#gFooter .messageUl li {
	margin-bottom: 7px;
	padding: 0 0 0 20px;
}
#gFooter .messageUl li span{
	font-size: 1rem;
	padding-left: 10px;
}
#gFooter .messageUl li span a{
	text-decoration: underline;
}
#gFooter .messageUl li:last-child {
	margin-bottom: 0;
}

#gFooter .messageUl img {
	margin: 0px 10px 0 0;
}

#gFooter .messageUl .insTxt {
	font-size: 1.25rem;
}

#gFooter .copyright {
	display: block;
	font-style: normal;
	letter-spacing: 0.2em;
}

@media all and (min-width: 1201px) and (max-width: 1240px) {
	#gFooter .addressUl>li:nth-child(2n-1):before {
		width: 1px;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		background-color: #999;
		content: "";
	}
}

@media all and (min-width: 897px) and (max-width: 1200px) {
	#gFooter .fNavi li {
		margin-left: 30px;
	}

	#gFooter .fLogo {
		margin-top: -11px;
	}

	#gFooter .addressUl {
		font-size: 1.2rem;
		letter-spacing: 0;
		justify-content: space-between;
	}

	#gFooter .addressUl>li {
		margin-right: 0;
		width: 33.33%;
	}

	#gFooter .addressUl>li::after {
		display: none;
	}

	#gFooter .flexBox {
		margin-bottom: 60px;
	}

	#gFooter .addressUl>li:nth-child(3n-2):before {
		display: none;
	}
}

@media all and (min-width: 897px) {
	#gFooter .addressUl a:hover {
		opacity: 0.7;
	}

	#gFooter .fNavi a:hover {
		opacity: 0.7;
	}

	#gFooter .copyright {
		color: #777E86;
		font-size: 0.9rem;
		white-space: nowrap;
		transform: rotate(90deg);
		position: fixed;
		bottom: 172px;
		right: -79px;
		-webkit-transition: 0.8s;
		transition: 0.8s;
	}

	#gFooter .copyright.white {
		color: #fff;
	}
}

@media all and (max-width: 896px) {
	#gFooter {
		margin-top: 77px;
		padding: 50px 0 19px;
	}

	#gFooter .flexBox {
		margin-bottom: 48px;
		display: block;
	}

	#gFooter .fLogo {
		margin: 0 auto;
		width: 100%;
		max-width: 250px;
	}

	#gFooter .copyright {
		text-align: center;
		font-size: 0.9rem;
		letter-spacing: 0.2em;
	}
}

/*------------------------------------------------------------
	汎用スタイル
------------------------------------------------------------*/
/* clearfix */
.clearfix:after {
	content: "";
	display: block;
	clear: both;
}

/* flex */
.flex,
.flexA,
.flexB,
.flexC {
	display: flex;
	flex-wrap: wrap;
}

.flexA {
	justify-content: space-around;
}

.flexB {
	justify-content: space-between;
}

.flexC {
	justify-content: center;
}

/*------------------------------------------------------------
	common
------------------------------------------------------------*/
/* content */
.content {
	margin: 0 auto;
	padding-left: 200px;
	width: 94%;
	max-width: 1200px;
	box-sizing: border-box;
}

@media all and (min-width: 897px) and (max-width: 1200px) {
	.content {
		padding-left: 0;
	}
}

@media all and (max-width: 896px) {
	.content {
		margin: 0 20px;
		padding-left: 0;
		width: auto;
		max-width: inherit;
	}
}

@media all and (max-width: 389px) {
	.content {
		margin: 0 15px;
	}
}

/* headLine01 */
.headLine01 {
	margin-bottom: 26px;
	padding-bottom: 38px;
	font-family: futura-pt, sans-serif;
	font-weight: 300;
	font-size: 3rem;
	line-height: 1;
	position: relative;
	letter-spacing: 0.1em;
}

.headLine01::after {
	width: 30px;
	height: 1px;
	position: absolute;
	bottom: 0;
	left: 0;
	background-color: #777E86;
	content: "";
}

.headLine01.center {
	text-align: center;
}

.headLine01.center::after {
	left: 50%;
	transform: translateX(-50%);
}

@media all and (max-width: 896px) {
	.headLine01 {
		padding-bottom: 38px;
		font-size: 2.5rem;
		letter-spacing: 0.03em;
	}
}

/* pageVisual */
.pageVisual {
	margin-bottom: 104px;
	display: flex;
	justify-content: flex-end;
}

.pageVisual .innerBox {
	width: calc(50% + 400px);
	position: relative;
}

.pageVisual .image {
	padding-bottom: 31.81%;
	background: url(../img/common/page_bg.jpg) no-repeat right top / cover;
}

.pageVisual .headLine01 {
	margin-bottom: 0;
	padding-bottom: 59px;
	position: absolute;
	bottom: 0;
	left: -18.3%;
	font-size: 4rem;
	white-space: nowrap;
	letter-spacing: 0.41em;
}

.pageVisual .headLine01::after {
	width: 50px;
}

@media all and (min-width: 897px) and (max-width: 1200px) {
	.pageVisual .headLine01 {
		left: -5%;
	}
}

@media all and (max-width: 896px) {
	.pageVisual .image {
		padding-bottom: 64% !important;
	}

	.pageVisual .innerBox {
		width: 100%;
	}

	.pageVisual {
		margin-bottom: 80px;
		display: block;
	}
}


/* widBox */
.widBox {
	margin-bottom: 45px;
	max-width: 800px;
}

@media all and (max-width: 896px) {
	.widBox {
		max-width: inherit;
	}
}


/* headLine02 */
.headLine02 {
	margin-bottom: 29px;
	font-size: 2.6rem;
	font-weight: normal;
	text-align: center;
}


/* recruit */
#recruit .linkUl {
	margin: 0 -10px 50px;
	display: flex;
	flex-wrap: wrap;
}

#recruit .linkUl li {
	padding: 0 10px;
	width: 33.33%;
	box-sizing: border-box;
}

#recruit .linkUl a {
	width: 100%;
	height: 65px;
	font-size: 1.6rem;
	font-weight: bold;
	border: 1px solid #777E86;
	box-sizing: border-box;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}

#recruit .linkUl .on a {
	color: #fff;
	background-color: #777E86;
}

@media all and (min-width: 897px) {
	#recruit .linkUl a:hover {
		color: #fff;
		background-color: #777E86;
	}
}

@media all and (max-width: 896px) {
	#recruit .linkUl li {
		padding: 0 3px;
	}

	#recruit .linkUl {
		margin: 0 -3px 50px;
	}

	#recruit .linkUl a {
		height: 50px;
		font-size: 1.3rem;
		line-height: 1.3;
	}
}

@media all and (max-width: 389px) {
	#recruit .linkUl a {
		font-size: 1.2rem;
	}
}


/* comTable */
.comTable {
	width: 100%;
	border-collapse: collapse;
}

.comTable th,
.comTable td {
	padding: 18px 19px 19px;
	font-weight: normal;
	font-size: 1.6rem;
	text-align: left;
	vertical-align: middle;
	border: 1px solid #E2E2E2;
	box-sizing: border-box;
	line-height: 1.625;
}

.comTable th {
	width: 30%;
	background-color: #F4F4F4;
}

@media all and (max-width: 896px) {

	.comTable th,
	.comTable td {
		padding: 13px 19px 12px;
		width: 100%;
		float: left;
		font-size: 1.4rem;
	}

	.comTable th {
		font-weight: bold;
		border-top: none;
		border-bottom: none;
	}

	.comTable tr:first-child th {
		border-top: 1px solid #E2E2E2;
	}
}

/* contact */
#contact .pageVisual {
	margin-bottom: 82px;
}


/* formBox */
.formBox {
	max-width: 808px;
}

.formBox table {
	width: 100%;
	border-collapse: collapse;
}

.formBox table th,
.formBox table td {
	padding: 15px 0;
	color: #222222;
	font-size: 1.5rem;
	font-weight: normal;
	box-sizing: border-box;
	text-align: left;
	vertical-align: top;
}

.formBox table th {
	width: 34.3%;
	padding-top: 27px;
	text-align: right;
}

.formBox table td {
	padding-left: 31px;
}

.formBox input[type="text"],
.formBox input[type="email"],
.formBox textarea {
	padding-left: 10px;
	color: #777E86;
	height: 50px;
	width: 100%;
	font-size: 1.5rem;
	border: 1px solid #CCCCCC;
	border-radius: 0;
	box-sizing: border-box;
	background-color: #fff;
	appearance: none;
	-webkit-appearance: none;
}

.formBox textarea {
	padding: 10px;
	height: 150px;
}

.formBox .must {
	margin: -2px 0 0 15px;
	padding: 6px 5px;
	color: #fff;
	font-size: 1.2rem;
	min-width: 50px;
	display: inline-block;
	vertical-align: middle;
	text-align: center;
	background: #797d86;
	box-sizing: border-box;
}

.formBox .agreeTxt {
	padding: 5px 0;
}

.formBox .agreeTxt input[type="checkbox"] {
	display: none;
	padding: 0;
	height: 20px;
	width: 20px;
	vertical-align: middle;
}

.formBox .agreeTxt input[type="checkbox"]+span {
	padding: 4px 0 4px 45px;
	border: none;
	display: inline-block;
	line-height: 30px;
	background: url(../img/common/check_icon.jpg) no-repeat left top 4px;
	background-size: 30px 30px;
	border-radius: 0;
	cursor: pointer;
}

.formBox .agreeTxt input[type="checkbox"]:checked+span {
	background-image: url(../img/common/check_icon_over.jpg);
}

.formBox .submit {
	margin: 26px 0 0 91px;
	display: flex;
	justify-content: center;
}

.formBox .submit li {
	margin: 0 15px;
}

.formBox .submit input {
	padding: 5px 27px 4px 20px;
	width: 140px;
	height: 40px;
	color: #fff;
	font-family: 'Oswald', sans-serif;
	border-radius: 0;
	border: none;
	background: #777E86 url(../img/common/icon01.png) no-repeat right 17px center;
	background-size: 10px 10px;
	font-size: 1.2rem;
	text-align: left;
	box-sizing: border-box;
	letter-spacing: -0.02em;
	cursor: pointer;
	-webkit-transition: .3s;
	transition: .3s;
	appearance: none;
	-webkit-appearance: none;
}

@media all and (min-width: 897px) {
	.formBox .submit input:hover {
		opacity: 0.7;
	}
}

@media all and (max-width: 896px) {
	.formBox {
		max-width: inherit;
	}

	.formBox .submit {
		margin: 30px 0 0 0;
		display: block;
	}

	.formBox .submit li {
		margin: 0 0 20px;
	}

	.formBox .submit li:last-child {
		margin-bottom: 0;
	}

	.formBox .submit input {
		margin: 0 auto;
		width: 230px;
		display: block;
	}

	.formBox table th,
	.formBox table td {
		margin-bottom: 15px;
		padding: 0;
		font-size: 1.3rem;
		width: 100%;
		float: left;
		text-align: left;
	}

	.formBox .must {
		margin: -2px 0 0 15px;
		padding: 3px 5px 5px;
		font-size: 1.1rem;
	}

	.formBox input[type="text"],
	.formBox input[type="email"],
	.formBox textarea {
		height: 48px;
		font-size: 1.3rem;
	}

	.formBox textarea {
		height: 180px;
	}

	.formBox .agreeTxt input[type="checkbox"]+span {
		padding-left: 30px;
		line-height: 25px;
		background-size: 25px 25px;
	}
}


/* news */
#news .pageVisual .image {
	padding-bottom: 50%;
	background-image: url(../img/news/page_bg.jpg);
}

#news .content {
	padding-left: 0;
}

#news .pageVisual {
	margin-bottom: 146px;
}

@media all and (max-width: 896px) {
	#news .pageVisual {
		margin-bottom: 104px;
	}
}

/* comListUl */
.comListUl {
	margin: -94px -10px 0;
	display: flex;
	flex-wrap: wrap;
	font-size: 1.3rem;
}

.comListUl p {
	line-height: 1.8;
	letter-spacing: 0;
}

.comListUl li {
	margin-top: 94px;
	padding: 0 10px;
	width: 25%;
	box-sizing: border-box;
}

.comListUl .image {
	margin-bottom: 13px;
	padding-bottom: 100%;
	background-repeat: no-repeat;
	background-position: left top;
	background-size: cover;
	/* background: url(../img/news/img01.jpg) no-repeat left top / cover; */
}

.comListUl .time {
	margin-bottom: 20px;
	padding-bottom: 17px;
	font-size: 1.6rem;
	font-family: futura-pt, sans-serif;
	font-weight: 500;
	text-align: center;
	position: relative;
	letter-spacing: 0.06em;
}

.comListUl .time::after {
	width: 30px;
	height: 1px;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	background-color: #777E86;
	content: "";
}

.comListUl .title {
	margin-bottom: 4px;
	font-weight: bold;
	font-size: 1.4rem;
}
.comListUl .col{
	display: inline-block;
	margin-top: 10px;
	background: #fff;
	padding: 5px 15px;
	text-align: center;
	color: #777E86;
	font-family: futura-pt, sans-serif;
	font-weight: 300;
	font-size: 1rem;
	letter-spacing: .1rem;
	transition: background-color .8s;
}
.comListUl a:hover .col {
	color: #fff;
	background: #777E86;
}
@media all and (min-width: 897px) {
	.comListUl a:hover {
		opacity: 0.7;
	}
}

@media all and (max-width: 896px) {
	.comListUl {
		margin: 0;
		display: block;
	}

	.comListUl li {
		margin: 0 0 40px;
		padding: 0;
		width: auto;
	}
}

/* wp-pagenavi */
.wp-pagenavi {
	margin-top: 99px;
	font-size: 0;
	clear: both;
	text-align: center;
}

.wp-pagenavi a,
.wp-pagenavi span {
	min-height: 50px;
	min-width: 50px;
	font-size: 1.6rem;
	font-family: futura-pt, sans-serif;
	font-weight: 500;
	display: inline-block;
	vertical-align: top;
	text-decoration: none;
	padding: 12px 5px 2px;
	margin: 0 10px;
	background-color: #FFFFFF;
	box-sizing: border-box;
}

.wp-pagenavi span.current {
	color: #fff;
	background-color: #777E86;
}

.wp-pagenavi .first,
.wp-pagenavi .last,
.wp-pagenavi .pages,
.wp-pagenavi .extend {
	display: none;
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
	min-width: 100px;
}

@media all and (min-width: 897px) {
	.wp-pagenavi a:hover {
		color: #fff;
		background-color: #777E86;
	}
}

@media all and (max-width: 896px) {
	.wp-pagenavi {
		margin: 80px -15px 0;
	}

	.wp-pagenavi a,
	.wp-pagenavi span {
		margin: 0 3px;
		padding: 10px 5px 2px;
		min-height: 40px;
		min-width: 40px;
		font-size: 1.3rem;
	}

	.wp-pagenavi .previouspostslink,
	.wp-pagenavi .nextpostslink {
		min-width: 60px;
	}
}

@media all and (max-width: 389px) {

	.wp-pagenavi a,
	.wp-pagenavi span {
		margin: 0 2px;
		padding: 6px 5px 2px;
		min-height: 32px;
		min-width: 32px;
		font-size: 1.2rem;
	}
}

/* detailBox */
.detailBox {
	padding: 6px 0;
	max-width: 800px;
}

.detailBox .headLine01 {
	margin-bottom: 16px;
	font-family: 'Noto Sans JP', sans-serif;
	padding-bottom: 36px;
	font-size: 2.4rem;
}

.detailBox .time {
	margin-bottom: 27px;
	text-align: right;
	letter-spacing: 0.1em;
	font-family: futura-pt, sans-serif;
	font-weight: 500;
	font-size: 1.6rem;
}

.detailBox .photoBox {
	margin-bottom: 30px;
}

.detailBox .singleBox p {
	margin-bottom: 26px;
}

.detailBox .singleBox p:last-child {
	margin-bottom: 0;
}

.detailBox .singleBox h1 {
	margin-bottom: 32px;
	padding-bottom: 9px;
	color: #777E86;
	font-size: 2rem;
	border-bottom: 1px solid #777E86;
}

.detailBox .singleBox h2 {
	margin-bottom: 19px;
	font-size: 1.8rem;
}

.detailBox .singleBox h3 {
	margin-bottom: 11px;
	font-size: 1.6rem;
}

.detailBox .singleBox table {
	width: 100%;
	border-collapse: collapse;
}

.detailBox .singleBox table th,
.detailBox .singleBox table td {
	padding: 15px 0 14px;
	border-top: 1px solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
	vertical-align: middle;
	text-align: left;
}

.detailBox .singleBox table th {
	width: 25%;
	font-weight: bold;
}

@media all and (max-width: 896px) {
	.detailBox {
		padding: 0;
		max-width: inherit;
	}
}


/* cafe */
#cafe .pageVisual {
	margin-bottom: 85px;
}

#cafe .pageVisual .image {
	padding-bottom: 50%;
	background-image: url("../img/cafe/cafe.jpg");
}

#cafe .coffeeBox .headLine01 {
	margin-bottom: 24px;
	padding-bottom: 0;
	font-size: 4rem;
	line-height: 2;
	letter-spacing: 0.4em;
}

#cafe .coffeeBox .headLine01::after {
	display: none;
}

#cafe .coffeeBox p {
	margin-bottom: 38px;
	line-height: 3;
	letter-spacing: 0.1em;
	font-size: 1.5rem;
}

#cafe .coffeeBox p:last-child {
	margin-bottom: 0;
}

#cafe .coffeeBox .imgUl {
	margin: 0 -17px;
	display: flex;
	flex-wrap: wrap;
}

#cafe .coffeeBox .imgUl li {
	padding: 0 17px;
	width: 33.33%;
	box-sizing: border-box;
}

#cafe .coffeeBox .imgUl img {
	width: 100%;
}

#cafe .coffeeBox .imgUl02 {
	margin-bottom: 34px;
}

#cafe .coffeeBox .imgUl02 li:first-child {
	width: 59.9%;
}

#cafe .coffeeBox .imgUl02 li:last-child {
	flex: 1;
}

#cafe .coffeeBox {
	padding-bottom: 100px;
}

#cafe .listBox {
	margin-bottom: -198px;
	padding: 50px 0 198px;
	background-color: #fff;
}

#cafe .listBox .innerBox {
	padding-left: 30px;
}

#cafe .listBox h3.headLine03 {
	margin-bottom: 20px;
	padding-bottom: 14px;
	color: #777E86;
	font-weight: 500;
	font-size: 1.6rem;
	text-align: left;
	border-color: #CCCCCC;
}

#cafe .listUl {
	margin: -30px -9px 0;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}

#cafe .listUl>li {
	margin-top: 30px;
	padding: 0 9px;
	width: 33.33%;
	box-sizing: border-box;
	display: flex;
	justify-content: space-between;
}

#cafe .listUl .photo {
	width: 150px;
}

#cafe .listUl .photo img {
	width: 100%;
}

#cafe .listUl .rightBox {
	margin: -3px 0 0 15px;
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

#cafe .listUl .lable {
	margin: -5px 28px 0 0;
	display: flex;
	flex-wrap: wrap;
	font-size: 1.1rem;
	line-height: 1;
	letter-spacing: 0.05em;
}

#cafe .listUl .lable span {
	margin: 5px 5px 0 0;
	min-width: 40px;
	padding: 5px 5px 4px;
	color: #fff;
	background-color: #777E86;
	display: inline-block;
	vertical-align: top;
	text-align: center;
	box-sizing: border-box;
}

#cafe .listUl .title {
	margin-bottom: 7px;
	;
	line-height: 1.8;
}

#cafe .priceUl {
	padding-right: 32px;
	color: #777E86;
	font-size: 1.3rem;
	font-family: futura-pt, sans-serif;
	font-weight: 400;
}

#cafe .priceUl li {
	margin-bottom: 8px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#cafe .priceUl li:last-child {
	margin-bottom: 0;
}

#cafe .priceUl .num {
	min-width: 34px;
	font-weight: 600;
	flex-shrink: 0;
	white-space: nowrap;
}

#cafe .priceUl .txt {
	flex: 1;
	letter-spacing: 0.06em;
}

#cafe .widBox {
	max-width: 460px;
}

#cafe .subBox {
	margin-bottom: 46px;
}

#cafe .subBox:last-child {
	margin-bottom: 0;
}

#cafe .subTitle {
	margin-bottom: 19px;
}

#cafe .c_news{
	background: #ffffff;
	position: relative;
}

#cafe .c_news .content{
	display: flex;
	padding-top: 80px;
	padding-bottom: 80px;
	position: relative;
}
#cafe .c_news .content span{
	font-size: 9px;
    white-space: nowrap;
    transform: rotate(-90deg);
	position: absolute;
    top: 182px;
    left: 93px;
    letter-spacing: 0.2em;
}
#cafe .time{
	font-family: futura-pt, sans-serif;
    font-weight: 500;
    font-size: 16px;
}

#cafe .title{
	font-weight: bold;
    font-size: 14px;
}

#cafe .border{
	border-bottom: solid 1px #777E86;
    width: 30px;
    margin: 20px 0;
}
#cafe .txt{
	padding-left: 50px;
}

#cafe .c_news .image{
	max-width: 250px;
	max-height: 250px;
	padding-left: 30px;
}

#cafe .c_news .image img{
	max-width: 250px;
}

#cafe .b_white{
	background: #F6F6F8;
}

#cafe .news_more a{
	text-decoration: underline;
	font-family: futura-pt, sans-serif;
}

#cafe .news_more{
	padding-top: 30px;
	text-align: right;
}

#cafe .news_back{
	max-width: 224px;
    position: absolute;
    right: 0;
    top: -26px;
    z-index: 100;
    object-position: 0;
    object-fit: cover;
    width: 224px;
    height: 166px;
}

@media all and (min-width: 897px) and (max-width: 1200px) {
	#cafe .priceUl {
		padding-right: 0;
		font-size: 1.2rem;
	}

	#cafe .listUl .photo {
		width: 134px;
	}

	#cafe .listBox .innerBox {
		padding-left: 0;
	}

	#cafe .listUl .lable {
		margin-bottom: 15px;
	}

	#cafe .listUl .title {
		letter-spacing: 0;
		font-size: 1.3rem;
	}
	
	#cafe .c_news .content span{
		left: -107px;
	}
}

@media all and (max-width: 896px) {
	#cafe .pageVisual .image {
		background-image: url(../img/cafe/sp_page_bg.jpg);
	}

	#cafe .coffeeBox .headLine01 {
		margin-bottom: 40px;
		line-height: 1.8;
		font-size: 2rem;
	}

	#cafe .pageVisual {
		margin-bottom: 44px;
	}

	#cafe .coffeeBox {
		margin: 0 50px;
		padding-bottom: 80px;
	}

	#cafe .coffeeBox p {
		margin-bottom: 43px;
		line-height: 2.5;
		font-size: 1.3rem;
	}

	#cafe .coffeeBox .imgUl {
		display: block;
		margin: 0;
	}

	#cafe .coffeeBox .imgUl li {
		padding: 0;
		margin-bottom: 20px;
		width: auto !important;
	}

	#cafe .coffeeBox .imgUl li:last-child {
		margin-bottom: 0;
	}

	#cafe .coffeeBox .imgUl02 li:first-child {
		width: auto;
	}

	#cafe .coffeeBox .imgUl02 {
		margin-bottom: 20px;
	}

	#cafe .listBox {
		margin-bottom: -77px;
		padding: 78px 0;
	}

	#cafe .listBox .innerBox {
		padding: 0 20px;
	}

	#cafe .listUl {
		margin: 0;
		display: block;
	}

	#cafe .listUl>li {
		margin: 0 0 18px;
		padding: 0;
		width: auto;
	}

	#cafe .listUl .rightBox {
		margin: -3px 0 0 20px;
	}

	#cafe .priceUl {
		padding-right: 25px;
	}

	#cafe .widBox {
		max-width: inherit;
	}
	
	#cafe .news_back{
		max-width: 212px;
    	right: 0;
		object-fit: cover;
		width: 167px;
		height: 143px;
	}
	
	#cafe .c_news .content{
		display: block;
		margin: 0 50px;
	}
	
	#cafe .txt{
		padding-left: 27px;
	}
	
	#cafe .c_news .image img{
		max-width: 284px;
	}
	
	#cafe .c_news .image{
		max-height: 284px;
		max-width: 284px;
	}
	
	#cafe .c_news .content span{
		left: -107px;
	}
	
	#cafe .time{
		padding-top: 20px;
		font-size: 13px;
	}
	
	#cafe .title{
		font-size: 13px;
	}
}

/* headLine03 */
.headLine03 {
	margin-bottom: 48px;
	padding-bottom: 11px;
	font-size: 2.4rem;
	font-family: futura-pt, sans-serif;
	font-weight: 400;
	border-bottom: 1px solid #777E86;
	text-align: center;
	letter-spacing: 0.15em;
}

@media all and (max-width: 896px) {
	.headLine03 {
		margin-bottom: 48px;
		padding-bottom: 14px;
		font-size: 1.6rem;
	}
}


/* centerTxt */
.centerTxt {
	text-align: center;
}


/* moreBtn */
.moreBtn {
	margin-top: 34px;
}

.moreBtn a {
	margin: 0 auto;
	width: 120px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #777E86;
	font-family: futura-pt, sans-serif;
	font-weight: 400;
	font-size: 1.3rem;
	border-radius: 20px;
	border: 1px solid #777E86;
	text-align: center;
	letter-spacing: 0.1em;
	box-sizing: border-box;
}

.moreBtn span {
	display: block;
}

.moreBtn .off {
	display: none;
}

.moreBtn.open .off {
	display: block;
}

.moreBtn.open .on {
	display: none;
}


/* items */
#items .pageVisual {
	margin-bottom: 85px;
}

#items .pageVisual .image {
	padding-bottom: 50%;
	background-image: url(../img/items/page_bg.jpg);
}

#items .topBox {
	margin-bottom: 101px;
}

#items .topBox .title {
	margin-bottom: 34px;
	font-weight: 300;
	font-size: 3rem;
	line-height: 2;
}

#items .topBox p {
	line-height: 2.5;
}

#items .secBox .headLine01 {
	margin-bottom: 94px;
	padding-bottom: 18px;
	font-size: 6rem;
	letter-spacing: 0;
	font-family: futura-pt, sans-serif;
	font-weight: 400;
}

#items .secBox .headLine01::after {
	width: 50px;
}

#items .imgBox {
	margin-bottom: 94px;
	display: flex;
	justify-content: space-between;
}

#items .imgBox .photo {
	width: 60%;
	order: 3;
	max-width: 600px;
}

#items .imgBox .textBox {
	margin: 34px 20px 0 0;
	flex: 1;
}

#items .imgBox .textBox p {
	line-height: 3;
	font-size: 1.5rem;
}

#items .imgBox .title {
	margin-bottom: 32px;
	font-size: 6rem;
	font-family: futura-pt, sans-serif;
	font-weight: 300;
	line-height: 1.66;
	letter-spacing: 0.17em;
}

#items .imgBox02 {
	margin-bottom: 54px;
}

#items .imgBox02 .photo {
	max-width: 434px;
	width: 44%;
	order: 0;
}

#items .imgBox02 .textBox {
	margin: 43px 0 0 50px;
}

#items .imgBox02 .title {
	font-size: 2.4rem;
	line-height: 2;
	font-weight: 500;
	font-family: 'Noto Sans JP', sans-serif;
	letter-spacing: 0.1em;
}

#items .itemBox .headLine01 {
	margin-bottom: 50px;
	padding-bottom: 25px;
	font-size: 3rem;
}

#items .listUl {
	margin: 0 -10px;
	display: flex;
	flex-wrap: wrap;
}

#items .listUl li {
	padding: 0 30px;
	width: 33.33%;
	text-align: center;
	box-sizing: border-box;
}

#items .listUl a {
	display: block;
	text-decoration: underline;
}

#items .listUl .image {
	margin-bottom: 18px;
}

#items .listUl p {
	margin: 0 -10px;
	line-height: 1.78;
	letter-spacing: -0.05em;
}

#items .secBox+.secBox {
	margin-top: 107px;
}

@media all and (min-width: 897px) {
	#items .listUl a:hover {
		opacity: 0.7;
	}
}

@media all and (max-width: 896px) {
	#items .topBox .title {
		margin-bottom: 20px;
		font-size: 2.5rem;
	}

	#items .topBox p {
		line-height: 2;
		letter-spacing: 0;
	}

	#items .pageVisual {
		margin-bottom: 80px;
	}

	#items .secBox .headLine01 {
		margin-bottom: 40px;
		font-size: 4.5rem;
	}

	#items .secBox .headLine01::after {
		width: 30px;
	}

	#items .imgBox .title {
		margin-bottom: 20px;
		font-size: 4rem;
		line-height: 1.4;
	}

	#items .imgBox {
		display: block;
	}

	#items .imgBox .photo {
		width: auto !important;
		max-width: inherit !important;
	}

	#items .imgBox .textBox {
		margin: 30px 0 0 0;
	}

	#items .imgBox .textBox p {
		line-height: 2;
		font-size: 1.4rem;
	}

	#items .imgBox02 .title {
		font-size: 2.2rem;
		letter-spacing: 0;
	}

	#items .listUl {
		display: block;
		margin: 0;
	}

	#items .listUl li {
		margin-bottom: 30px;
		width: auto;
		padding: 0;
	}

	#items .listUl li:last-child {
		margin-bottom: 0;
	}

	#items .itemBox .headLine01 {
		font-size: 2.8rem;
	}
}


/* top */
#top .mainVisual {
	margin-bottom: 112px;
	position: relative;
}

#top .mainVisual .imgUl img {
	width: 100%;
}

#top .mainVisual .imgUl {
	line-height: 1;
	font-size: 0;
}

#top .mainVisual .imgUl .image {
	height: 100vh;
	background: url(../img/index/main_img01.jpg) no-repeat center center / cover;
}

#top .mainVisual .imgUl .img02 .image {
	background-image: url(../img/index/main_img02.jpg);
}

#top .mainVisual .imgUl .img03 .image {
	background-image: url(../img/index/main_img03.jpg);
}

#top .mainVisual .imgUl .img04 .image {
	background-image: url(../img/index/main_img04.jpg);
}

#top .mainVisual .logoImg {
	margin-left: -21.45%;
	width: 300px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

#top .content {
	padding-left: 0;
}

#top .headLine03 {
	margin-bottom: 13px;
	padding-bottom: 14px;
	text-align: left;
	font-size: 1.6rem;
}

#top .newsBox {
	margin-bottom: 148px;
}

#top .conceptBox {
	padding: 153px 20px 403px;
	background: url(../img/index/bg01.jpg) no-repeat center center / cover;
}

#top .conceptBox p {
	color: #fff;
}

#top .conceptBox .flexBox {
	display: flex;
	justify-content: space-between;
}

#top .conceptBox .flexBox .textBox {
	width: 60%;
	max-width: 580px;
}

#top .conceptBox .flexBox .photo {
	margin: 125px 20px 0 0;
	text-align: center;
	flex: 1;
}

#top .conceptBox .flexBox .headLine01 {
	margin-bottom: 68px;
	color: #fff;
	letter-spacing: 0.5em;
	padding-bottom: 86px;
}

#top .conceptBox .flexBox .headLine01::after {
	width: 100px;
	background-color: #fff;
}

#top .conceptBox .flexBox p {
	margin-bottom: 45px;
	line-height: 3;
	font-size: 1.5rem;
	letter-spacing: 0.1em;
}

#top .conceptBox .flexBox p:last-child {
	margin-bottom: 0;
}

#top .yourself {
	margin: -100px auto 0;
	padding: 250px 50px 20px;
	max-width: 1100px;
	background-color: #F6F6F8;
	box-sizing: border-box;
	position: relative;
}

#top .imgBox {
	margin-bottom: 230px;
	display: flex;
	justify-content: space-between;
}

#top .imgBox .photo {
	max-width: 450px;
	width: 50%;
	order: 3;
}

#top .imgBox .textBox {
	margin-top: 200px;
	flex: 1;
}

#top .imgBox .headLine01 {
	padding-bottom: 75px;
	font-size: 6rem;
	line-height: 1.66;
	position: absolute;
	top: -166px;
	left: 50px;
	box-sizing: border-box;
	letter-spacing: 0.42em;
}

#top .imgBox .headLine01::after {
	width: 100px;
}

#top .imgBox .bgBox {
	margin-left: -50px;
	padding: 176px 54px 54px;
	background-color: #fafafa;
	position: relative;
}

#top .imgBox p {
	font-size: 1.5rem;
	line-height: 3;
}

#top .yourself .comLink,
#top .itemsBox .comLink {
	margin: 66px 0 0;
}

#top .itemsBox {
	margin-bottom: 150px;
	background-color: #f0f0f2;
}

#top .itemsBox .photo {
	max-width: 550px;
	width: 46%;
	flex-shrink: 0;
	margin-top: -50px;
	position: relative;
}

#top .itemsBox .textBox {
	margin: 0;
	padding: 84px 40px 100px 97px;
	order: 5;
}

#top .itemsBox .headLine01 {
	margin-bottom: 68px;
	padding-bottom: 68px;
	position: relative;
	top: auto;
	left: 0;
	line-height: 2;
	font-size: 4rem;
}

#top .itemsBox .imgBox {
	margin-bottom: 0;
}

#top .coffeeBox {
	margin-bottom: 148px;
	padding: 225px 0 172px;
	background: url(../img/index/bg02.jpg) no-repeat center center / cover;
}

#top .coffeeBox p {
	color: #fff;
}

#top .coffeeBox .flexBox {
	max-width: 1200px;
	display: flex;
	justify-content: space-between;
}

#top .coffeeBox .flexBox .textBox {
	width: 70%;
	max-width: 601px;
}

#top .coffeeBox .flexBox .photo {
	margin: -53px 50px 0 0;
	text-align: center;
	flex: 1;
}

#top .coffeeBox .flexBox .headLine01 {
	margin-bottom: 68px;
	color: #fff;
	letter-spacing: 0.5em;
	padding-bottom: 86px;
}

#top .coffeeBox .flexBox .headLine01::after {
	width: 100px;
	background-color: #fff;
}

#top .coffeeBox .flexBox p {
	margin-bottom: 20px;
	line-height: 2.4;
	letter-spacing: 0.1em;
}

#top .coffeeBox .flexBox p:last-child {
	margin-bottom: 0;
}

#top .coffeeBox .comLink {
	margin: 0;
}

#top .coffeeBox .comLink a {
	color: #fff;
}

#top .insBox {
	margin-bottom: 200px;
}

#top .insBox .imgUl {
	margin: 0 -10px;
	display: flex;
	flex-wrap: wrap;
}

#top .insBox .imgUl li {
	padding: 10px;
	width: 20%;
	box-sizing: border-box;
}

#top .insBox .imgUl a {
	padding-bottom: 100%;
	display: block;
	background: url(../img/index/ins_img01.jpg) no-repeat center center /cover;
}

#top .insBox .comLink {
	margin-bottom: 39px;
}

#top .insBox .linkUl {
	margin-top: 40px;
	display: flex;
	justify-content: center;
	font-family: futura-pt, sans-serif;
	font-weight: 400;
	font-size: 1.6rem;
	letter-spacing: 0.1em;
}

#top .insBox .linkUl li {
	margin: 0 38px;
}

#top .item-list-box {
	display: flex;
	gap: 20px;
	margin: 0 auto 30px;
}

#top .item-list-box li {
	display: flex;
    flex-flow: column;
    gap: 5px;
}

#top .item-list-box li a {
	text-decoration: underline;
}

#top .item-list-box li a:hover {
	text-decoration: none;
}

#top .accessBox .flexBox {
	margin-bottom: 98px;
	margin-left: auto;
	width: 90%;
	max-width: 1000px;
}


#top .accessBox .flexBox:last-child {
	margin-bottom: 0;
}

#top .accessBox .flexBox:nth-child(2n) {
	margin-left: 0;
	margin-right: auto;
}

#top .accessBox .innerBox {
	margin-top: 46px;
	display: flex;
	justify-content: space-between;
}

#top .accessBox .title {
	font-size: 3rem;
	font-family: futura-pt, sans-serif;
	font-weight: 400;
	letter-spacing: 0.06em;
	flex: 1;
}

#top .accessBox .listUl {
	margin: 4px 0 0 20px;
	width: 55%;
	max-width: 450px;
}

#top .accessBox .listUl img {
	width: 15px;
	position: absolute;
	top: 3px;
	left: 0;
}

#top .accessBox .listUl li {
	margin-bottom: 14px;
	padding-left: 25px;
	position: relative;
}

#top .accessBox .listUl li span{
	font-size: 1rem;
	padding-left: 10px;
}
#top .accessBox .listUl li span a{
	text-decoration: underline;
}

#top .accessBox .listUl li:last-child {
	margin-bottom: 0;
}

#top .accessBox .listUl .insTxt {
	font-family: futura-pt, sans-serif;
	font-weight: 400;
	letter-spacing: 0.1em;
}

@media all and (min-width: 897px) and (max-width: 1200px) {
	#top .conceptBox .flexBox p {
		font-size: 1.4rem;
		letter-spacing: 0;
	}

	#top .imgBox .headLine01 {
		padding-bottom: 34px;
		font-size: 4.5rem;
		letter-spacing: 0.2em;
		top: -100px;
	}

	#top .imgBox .bgBox {
		padding-top: 150px;
	}

	#top .itemsBox .textBox {
		padding: 40px 40px 100px 30px;
	}

	#top .imgBox p {
		line-height: 2.5;
	}

	#top .coffeeBox .flexBox .textBox {
		width: 63%;
	}

	#top .coffeeBox .flexBox .photo {
		margin: -14px 30px 0 0;
	}

	#top .accessBox .flexBox {
		width: 97%;
	}

	#top .accessBox .listUl {
		width: 53%;
	}

	#top .accessBox .title {
		font-size: 2.5rem;
		letter-spacing: 0;
	}
}

@media all and (min-width: 897px) {
	#top .accessBox .listUl a:hover {
		text-decoration: underline;
	}

	.topPage #gHeader .logo {
		opacity: 0;
		position: relative;
		z-index: -100;
	}

	#top .insBox .imgUl a:hover,
	#top .insBox .linkUl a:hover {
		opacity: 0.7;
	}
}

@media all and (max-width: 896px) {
	#top .mainVisual {
		margin-bottom: 79px;
	}

	#top .mainVisual .imgUl .image {
		background-image: url(../img/index/sp_main_img01.jpg);
	}

	#top .headLine03 {
		margin-bottom: 12px;
	}

	#top .comListUl li {
		margin-bottom: 0;
		width: 285px;
	}

	#top .conceptBox {
		margin: 0 -20px;
		padding: 83px 29px 175px;
	}

	#top .newsBox {
		margin-bottom: 78px;
	}

	#top .newsBox .slick-slide {
		margin: 0 10px;
		width: 285px;
	}

	#top .newsBox .comListUl {
		margin-right: -20px;
	}

	#top .conceptBox .flexBox .textBox {
		width: auto;
		max-width: inherit;
	}

	#top .conceptBox .flexBox {
		display: block;
	}

	#top .conceptBox .flexBox .headLine01 {
		margin-bottom: 43px;
		padding-bottom: 54px;
		font-size: 2rem;
	}

	#top .conceptBox .flexBox .headLine01::after {
		width: 50px;
	}

	#top .conceptBox .flexBox p {
		margin-bottom: 33px;
		line-height: 2.5;
		font-size: 1.3rem;
		letter-spacing: -0.05em;
	}

	#top .yourself {
		margin-top: -50px;
		padding: 100px 30px 20px;
	}

	#top .imgBox {
		margin-bottom: 79px;
		display: block;
	}

	#top .imgBox .photo {
		max-width: inherit;
		width: auto;
		position: relative;
		z-index: 10;
	}

	#top .imgBox .headLine01 {
		margin-bottom: 43px;
		padding-bottom: 49px;
		font-size: 2rem;
		line-height: 1.66;
		position: relative;
		top: auto;
		left: auto;
		box-sizing: border-box;
		letter-spacing: 0.42em;
	}

	#top .imgBox .headLine01::after {
		width: 50px;
	}

	#top .imgBox .textBox {
		margin: -50px -50px 0;
	}

	#top .imgBox .bgBox {
		margin: 0;
		padding: 98px 49px 50px;
	}

	#top .imgBox p {
		margin-bottom: 33px;
		line-height: 2.5;
		font-size: 1.3rem;
		letter-spacing: 0;
	}

	#top .imgBox p:last-child {
		margin-bottom: 0;
	}

	#top .yourself .comLink,
	#top .itemsBox .comLink {
		margin: 40px 0 0;
	}

	#top .itemsBox {
		margin: 0 30px 50px;
		background-color: transparent;
	}

	#top .itemsBox .textBox {
		margin: -50px -50px 0;
		padding: 98px 50px 54px;
		background-color: #f0f0f2;
	}

	#top .itemsBox .comLink {
		text-align: left;
	}

	#top .coffeeBox .flexBox {
		display: block;
	}

	#top .coffeeBox .flexBox .textBox {
		margin: 0 30px;
		width: auto;
		max-width: inherit;
	}

	#top .coffeeBox .flexBox .photo {
		margin: 0 0 43px;
	}

	#top .coffeeBox .flexBox .photo img {
		max-width: 300px;
		width: 100%;
	}

	#top .coffeeBox {
		margin-bottom: 48px;
		padding: 50px 0 49px;
	}

	#top .coffeeBox .flexBox p {
		margin-bottom: 20px;
		line-height: 2.5;
		letter-spacing: 0;
		font-size: 1.3rem;
	}

	#top .coffeeBox .comLink {
		margin: 41px 0 0 0;
		text-align: left;
	}

	#top .insBox .comLink {
		margin-bottom: 19px;
	}

	#top .insBox .imgUl li {
		width: 50%;
	}

	#top .insBox .linkUl {
		margin-top: 19px;
		display: block;
		text-align: center;
	}

	#top .insBox .linkUl li {
		margin: 0 0 20px;
	}

	#top .insBox .linkUl li:last-child {
		margin-bottom: 0;
	}

	#top .item-list-box {
		gap: 4%;
		flex-wrap: wrap;
		row-gap: 10px;
	}

	#top .item-list-box li {
		width: 48%;
	}

	#top .accessBox .flexBox {
		margin: 0 -20px 85px;
		width: auto;
		max-width: inherit;
	}

	#top .accessBox .innerBox {
		display: block;
		margin: 45px 50px 0;
	}

	#top .accessBox .listUl {
		margin: 0 -20px 0 0;
		width: auto;
		max-width: inherit;
		letter-spacing: -0.05em;
	}

	#top .accessBox .title {
		margin-bottom: 23px;
		font-size: 2rem;
		line-height: 1.8;
		letter-spacing: 0.45em;
	}

	#top .accessBox .listUl li {
		margin-bottom: 8px;
		padding-left: 25px;
		line-height: 1.68;
		font-size: 1.5rem;
	}

		#top .accessBox .flexBox:nth-child(2n) {
			margin: 0 -20px 85px;
		}
	
		#top .accessBox .listUl img {
			top: 6px;
		}
	
		#top .insBox {
			margin-bottom: 81px;
		}
	
		#top .accessBox .photo img,
		#top .imgBox .photo img {
			width: 100%;
		}
	
		#top .mainVisual .copyright {
			color: #fff;
			font-size: 0.9rem;
			white-space: nowrap;
			transform: rotate(90deg);
			position: absolute;
			bottom: 142px;
			right: -103px;
			letter-spacing: 0.2em;
		}
		}

#top .add_area .overlay {
     width: 100%;
     height: 100%;
     position: absolute;
     top: 0;
     z-index: 1;
    }
    #top .add_area .btn_area {
     position: absolute;
     min-width: 260px;
     max-width: 260px;
     right: 100px;
     bottom: 50px;
     background-color: #fff;
     border-radius: 10px;
     z-index: 2;
     padding: 5px 10px 10px;
    }
    #top .add_area .btn_area .ttl {
     font-size: 20px;
     font-family: futura-pt, sans-serif;
     color: #798088;
     letter-spacing: 0.4rem;
     margin: 0 0 10px;
    }
    #top .add_area .btn_area div p {
     font-size: 14px;
     line-height: 1.6;
     letter-spacing: 0;
     margin: 10px 0 0;
    }
    #top .add_area .btn_area div p a{
     text-decoration: underline;
    }
    #top .add_area .btn_area button {
     position: absolute;
     top: 0;
     right: 0;
     background-color: #777e86;
     border: 0;
     padding: 10px;
     right: 0;
     top: 0;
     border-radius: 0 10px 0 10px;     
    }
    #top .add_area .btn_area button:hover {
     opacity: 0.7;
    }
    @media (max-width: 896px) {
     #top .add_area .btn_area{
      max-width: unset;
      min-width: unset;
      width: 60%;
      right: unset;
      bottom: 2%;
      left: 3%;
      border-radius: 15px;
     }
     #top .add_area .btn_area .ttl{
      font-size: 19px;
      margin: 0 0 5px;
     }
    }

#top .os-text{
     margin: 20px 0 30px;
    }
    #top .conceptBox{
     clear: both;
    }
    #top .column4:nth-child(4n+1){
     clear: none;
    }
    #top .column4:nth-child(4n){
     margin: 0 4% 20px 0;
    }
    #top .column4:nth-child(6n){
     margin: 0 0 20px 0;
    }
    #top .column4 p{
     font-size: 13px;
     text-decoration: underline;
    }
    #top .column4 h3{
     margin-bottom: 0px;
    }
    #top .column4 h3 a{
     text-decoration: underline;
    }
    #top .other-link{
     font-family: futura-pt, sans-serif;
     clear: both;
     display: block;
     color: #fff!important;
     background-color: #777e86;
     width: fit-content;
     margin: 0 auto;
     border-radius: 50px;
     font-size: 20px;
     letter-spacing: 0.5rem;
     padding: 20px 50px;
    }
    #top .other-link:hover{
     opacity: 0.7;
    }
    @media screen and (max-width: 480px) {
     #top .insBox:nth-child(2){
      margin-bottom: 40px;
     }
     #top .column4:nth-child(2n+1), .column5:nth-child(2n+1){
      clear: none;
     }
     #top .column4:nth-child(1){
      clear: both;
     }
     #top .column4:nth-child(4n){
      margin: 0 0% 10px 0;
     }
     #top .other-link{
      width: 90%;
      font-size: 17px;
      padding: 3% 0;
      text-align: center;
     }
    }
	
		/* comLink */
		.comLink {
			margin-bottom: 75px;
		}
	
		.comLink a {
			font-size: 1.6rem;
			text-decoration: underline;
			letter-spacing: 0.08em;
			font-family: futura-pt, sans-serif;
			font-weight: 400;
		}
	
		.comLink.right {
			text-align: right;
		}
	
		@media all and (max-width: 896px) {
			.comLink a {
				font-size: 1.3rem;
			}
	
			.comLink {
				margin-bottom: 25px;
			}
		}


/* bread */
#bread .pageVisual {
	margin-bottom: 85px;
}

#bread .pageVisual .image {
	padding-bottom: 50%;
	background-image: url("../img/bread/bread.jpg");
}

#bread .coffeeBox .headLine01 {
	margin-bottom: 24px;
	padding-bottom: 0;
	font-size: 4rem;
	line-height: 2;
	letter-spacing: 0.4em;
}

#bread .coffeeBox .headLine01::after {
	display: none;
}

#bread .coffeeBox p {
	margin-bottom: 38px;
	line-height: 3;
	letter-spacing: 0.1em;
	font-size: 1.5rem;
}

#bread .coffeeBox p:last-child {
	margin-bottom: 0;
}

#bread .coffeeBox .imgUl {
	margin: 0 -17px;
	display: flex;
	flex-wrap: wrap;
}

#bread .coffeeBox .imgUl li {
	padding: 0 17px;
	width: 33.33%;
	box-sizing: border-box;
}

#bread .coffeeBox .imgUl img {
	width: 100%;
}

#bread .coffeeBox .imgUl02 {
	margin-bottom: 34px;
}

#bread .coffeeBox .imgUl02 li:first-child {
	width: 59.9%;
}

#bread .coffeeBox .imgUl02 li:last-child {
	flex: 1;
}

#bread .coffeeBox {
	padding-bottom: 100px;
}

#bread .listBox {
	margin-bottom: -198px;
	padding: 50px 0 198px;
	background-color: #fff;
}

#bread .listBox .innerBox {
	padding-left: 30px;
}

#bread .listBox h3.headLine03 {
	margin-bottom: 20px;
	padding-bottom: 14px;
	color: #777E86;
	font-weight: 500;
	font-size: 1.6rem;
	text-align: left;
	border-color: #CCCCCC;
}

#bread .listUl .photo {
	width: 150px;
}

#bread .listUl .photo img {
	width: 100%;
}

#bread .listUl .rightBox {
	margin: -3px 0 0 15px;
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

#bread .listUl .lable {
	margin: -5px 28px 0 0;
	display: flex;
	flex-wrap: wrap;
	font-size: 1.1rem;
	line-height: 1;
	letter-spacing: 0.05em;
}

#bread .listUl .lable span {
	margin: 5px 5px 0 0;
	min-width: 40px;
	padding: 5px 5px 4px;
	color: #fff;
	background-color: #777E86;
	display: inline-block;
	vertical-align: top;
	text-align: center;
	box-sizing: border-box;
}

#bread .listUl .title {
	margin-bottom: 7px;
	;
	line-height: 1.8;
}

#bread .priceUl {
	padding-right: 32px;
	color: #777E86;
	font-size: 1.3rem;
	font-family: futura-pt, sans-serif;
	font-weight: 400;
}

#bread .priceUl li {
	margin-bottom: 8px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#bread .priceUl li:last-child {
	margin-bottom: 0;
}

#bread .priceUl .num {
	min-width: 34px;
	font-weight: 600;
	flex-shrink: 0;
	white-space: nowrap;
}

#bread .priceUl .txt {
	flex: 1;
	letter-spacing: 0.06em;
}

#bread .widBox {
	max-width: 460px;
}

#bread .subBox {
	margin-bottom: 46px;
}

#bread .subBox:last-child {
	margin-bottom: 0;
}

#bread .subTitle {
	margin-bottom: 19px;
}

#bread .c_news{
	background: #ffffff;
	position: relative;
}

#bread .c_news .content{
	display: flex;
	padding-top: 80px;
	padding-bottom: 80px;
	position: relative;
}
#bread .c_news .content span{
	font-size: 9px;
    white-space: nowrap;
    transform: rotate(-90deg);
	position: absolute;
    top: 182px;
    left: 93px;
    letter-spacing: 0.2em;
}
#bread .time{
	font-family: futura-pt, sans-serif;
    font-weight: 500;
    font-size: 16px;
}

#bread .title{
	font-weight: bold;
    font-size: 14px;
}

#bread .border{
	border-bottom: solid 1px #777E86;
    width: 30px;
    margin: 20px 0;
}
#bread .c_news .txt{
	padding-left: 50px;
}

#bread .c_news .image{
	max-width: 250px;
	max-height: 250px;
	padding-left: 30px;
}

#bread .c_news .image img{
	max-width: 250px;
}

#bread .b_white{
	background: #F6F6F8;
}

#bread .news_more a{
	text-decoration: underline;
	font-family: futura-pt, sans-serif;
}

#bread .news_more{
	padding-top: 30px;
	text-align: right;
}

#bread .news_back{
	max-width: 224px;
    position: absolute;
    right: 0;
    top: -26px;
    z-index: 100;
    object-position: 0;
    object-fit: cover;
    width: 224px;
    height: 166px;
}

#bread .morningBox .flexBox{
	margin-bottom: 98px;
    margin-left: auto;
    width: 90%;
    max-width: 1000px;
	padding-top: 100px;
}

#bread .morningBox{
	margin: 0 auto;
    max-width: 1200px;
}

#bread .morningBox .title{
	font-size: 3rem;
    font-family: futura-pt, sans-serif;
    font-weight: 300;
    letter-spacing: 0.06em;
    flex: 1;
	line-height: 2;
	padding-bottom: 50px;
}

#bread .morningBox p{
	margin: 0 0 38px;
    line-height: 2.5;
    letter-spacing: 0.1em;
    font-size: 1.5rem;
}

#bread .morningBox th{
	vertical-align: top;
	font-weight: 400;
	line-height: 25px;
	white-space: nowrap;
}

#bread .morningBox .detail_inner{
	padding-bottom: 0;
}

#bread .morningBox td{
	padding-left: 25px;
	padding-bottom: 10px;
	line-height: 25px;
}

#bread .morningBox .innerBox{
	margin-top: 46px;
    display: flex;
    justify-content: space-between;
}

#bread .menu_txt{
	padding-bottom: 80px;
}

#bread .menu_txt img{
	max-width: 434px;
}

#bread .standard_menu .txt{
	display: flex;
	flex-flow: row-reverse;
	justify-content: space-between;
}

#bread .standard_menu{
	background: #ffffff;
}

#bread .accessBox .innerBox{
	margin-top: 46px;
    display: flex;
    justify-content: space-between;
}

#bread .accessBox .title{
	font-size: 3rem;
    font-family: futura-pt, sans-serif;
    font-weight: 400;
    letter-spacing: 0.06em;
    flex: 1;
}

#bread .accessBox .listUl{
	margin: 4px 0 0 20px;
    width: 55%;
    max-width: 450px;
}

#bread .accessBox .listUl li{
	margin-bottom: 14px;
    padding-left: 25px;
    position: relative;
}

#bread .accessBox .listUl img{
	width: 15px;
    position: absolute;
    top: 3px;
    left: 0;
}

#bread .accessBox{
	padding-top: 80px;
}

#bread .s_menu .comListUl li{
	width: 33%;
}

#bread .s_menu{
	padding-top: 100px;
    padding-bottom: 150px;
}
#bread .s_menu .headLine01{
	font-size: 40px;
    line-height: 2;
	margin-bottom: 80px;
	padding-top: 50px;
}

#bread .s_menu .comListUl p{
	text-align: center;
	padding-top: 15px;
}

#bread .s_menu .comListUl a{
	text-decoration: underline;
}

#bread .s_menu .comListUl .title{
	text-align: center;
}

#bread .morningBox .detail_inner{
	padding-left: 10px;
}

#bread .headLine01::after{
	width: 100px;
}

#bread .menu_txt p{
	line-height: 3;
}


@media all and (min-width: 897px) and (max-width: 1200px) {
	#bread .priceUl {
		padding-right: 0;
		font-size: 1.2rem;
	}

	#bread .listUl .photo {
		width: 134px;
	}

	#bread .listBox .innerBox {
		padding-left: 0;
	}

	#bread .listUl .lable {
		margin-bottom: 15px;
	}

	#bread .listUl .title {
		letter-spacing: 0;
		font-size: 1.3rem;
	}
	
	#bread .c_news .content span{
		left: -107px;
	}
	
	#bread .morningBox{
		width: 94%;
		box-sizing: border-box;
	}
	
	#bread .morningBox .flexBox{
		margin-left: 0;
		width: 100%;
		max-width: 100%;
	}
}

@media all and (max-width: 896px) {
	#bread .pageVisual .image {
		background-image: url(../img/bread/sp_page_bg.jpg);
	}

	#bread .coffeeBox .headLine01 {
		margin-bottom: 40px;
		line-height: 1.8;
		font-size: 2rem;
	}

	#bread .pageVisual {
		margin-bottom: 44px;
	}

	#bread .coffeeBox {
		margin: 0 50px;
		padding-bottom: 80px;
	}

	#bread .coffeeBox p {
		margin-bottom: 43px;
		line-height: 2.5;
		font-size: 1.3rem;
	}

	#bread .coffeeBox .imgUl {
		display: block;
		margin: 0;
	}

	#bread .coffeeBox .imgUl li {
		padding: 0;
		margin-bottom: 20px;
		width: auto !important;
	}

	#bread .coffeeBox .imgUl li:last-child {
		margin-bottom: 0;
	}

	#bread .coffeeBox .imgUl02 li:first-child {
		width: auto;
	}

	#bread .coffeeBox .imgUl02 {
		margin-bottom: 20px;
	}

	#bread .listBox {
		margin-bottom: -77px;
		padding: 78px 0;
	}

	#bread .listBox .innerBox {
		padding: 0 20px;
	}

	#bread .listUl {
		margin: 0;
		display: block;
	}

	#bread .listUl>li {
		margin: 0 0 18px;
		padding: 0;
		width: auto;
	}

	#bread .listUl .rightBox {
		margin: -3px 0 0 20px;
	}

	#bread .priceUl {
		padding-right: 25px;
	}

	#bread .widBox {
		max-width: inherit;
	}
	
	#bread .news_back{
		max-width: 212px;
    	right: 0;
		object-fit: cover;
		width: 167px;
		height: 143px;
	}
	
	#bread .c_news .content{
		display: block;
		margin: 0 50px;
	}
	
	#bread .c_news .txt{
		padding-left: 27px;
	}
	
	#bread .c_news .image img{
		max-width: 284px;
	}
	
	#bread .c_news .image{
		max-height: 284px;
		max-width: 284px;
	}
	
	#bread .c_news .content span{
		left: -107px;
	}
	
	#bread .time{
		padding-top: 20px;
		font-size: 13px;
	}
	
	#bread .title{
		font-size: 13px;
	}
	
	#bread .morningBox .title{
		font-size: 2rem;
		line-height: 1.66;
		letter-spacing: 0.45em;
		margin: 0 50px;
		padding-bottom: 43px;
	}
	
	#bread .morningBox li{
		list-style: none;
		padding-bottom: 20px;
		line-height: 1.7;
	}
	
	#bread .s_menu .headLine01{
		margin-bottom: 43px;
		padding-bottom: 49px;
		font-size: 2rem;
		line-height: 1.66;
		position: relative;
		top: auto;
		left: auto;
		box-sizing: border-box;
		letter-spacing: 0.42em;
	}
	
	#bread .s_menu .comListUl li{
		width: 46%;
	}
	
	#bread .s_menu .comListUl{
		display: flex;
		justify-content: space-between;
	}
	
	#bread .s_menu .comListUl .title{
		text-align: left;
	}
	
	#bread .s_menu .comListUl p{
		text-align: left;
	}
	
	#bread .s_menu{
		max-width: 1100px;
	}
	
	#bread .menu_txt{
		display: block;
	}
	
	#bread .menu_txt img{
		width: 100%;
	}
	
	#bread .s_menu{
		padding: 100px 30px 20px;
	}
	
	#bread .morningBox .innerBox{
		display: block;
		padding-bottom: 80px;
	}
	
	#bread .accessBox .innerBox{
		display: block;
	}
	
	#bread .accessBox .listUl{
		margin: 0;
    	width: 100%;
	}
	
	#bread .accessBox .title{
		margin-bottom: 23px;
		font-size: 2rem;
		line-height: 1.8;
		letter-spacing: 0.45em;
	}
	
	#bread .accessBox .innerBox{
		display: block;
		margin: 45px 50px 0;
	}
	
	#bread .standard_menu .txt{
		display: block;
	}
	
	#bread .bread_access{
		margin: 0;
	}
	
	#bread .morningBox .flexBox{
		margin: 0;
		width: 100%;
	}
	
	#bread .morningBox li{
		margin: 0 50px;
	}
	
	#bread .morningBox p{
		margin: 0 50px 38px;
		font-size: 1.3rem;
		line-height: 2;
	}
	
	#bread .morningBox span{
		font-weight: bold;
	}
	
	#bread .menu_txt p{
		font-size: 1.3rem;
    	line-height: 2;
		letter-spacing: 0.1em;
	}
}