@charset "utf-8";

/* ========== MEDIA QUERY ========== */

/*
1440-
1221-1439
1025-1220
768-1024
*/

/* ========== COMMON ========== */

/* page-body */
#page-body {
	overflow-x: hidden;
	padding-bottom: 0;
}
#page-body div,#page-body span,#page-body p,#page-body a,#page-body hr,
#page-body h1,#page-body h2,#page-body h3,#page-body h4,#page-body h5,#page-body h6,
#page-body dl,#page-body dt,#page-body dd,#page-body ol,#page-body ul,#page-body li,
#page-body article,#page-body section,#page-body header,#page-body footer,#page-body menu,#page-body nav,
#page-body fieldset,#page-body label,#page-body button,#page-body input,#page-body optgroup,#page-body select,#page-body textarea
#page-body object,#page-body audio,#page-body video,#page-body svg {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	line-height: 1;
}

/* a */
#page-body a {
	transition: all 0.3s ease 0s;
	color: inherit;
	opacity: 1;
	text-decoration: none;
}
#page-body a:hover,
#page-body a:active {
	color: inherit;
	opacity: 0.7;
	text-decoration: none;
}

/* span */
#page-body span {
	display: inline-block;
	line-height: inherit;
}

/* container */
#page-body .container {
	max-width: unset;
	background: none;
}
@media (max-width: 767px) {
	#page-body .container {
		padding: 0;
	}
}

/* breadcrumb */
#page-body .breadcrumb-wrap {
	box-sizing: border-box;
	max-width: 1318px;
	padding: 10px;
	margin: 0 auto;
}
@media (max-width: 767px) {
	#page-body .container {
		padding: 0;
	}
}

/* アニメーションがチラつく時に使用*/
body{
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}



/* ========== ANIMATION ========== */

/* animation-text-333 */
#page-body .animation-text-horizontal-tb-333 {
	background-image: linear-gradient(to right, rgba(51, 51, 51, 1), rgba(51, 51, 51, 1), rgba(51, 51, 51, 0), rgba(51, 51, 51, 0));
	background-position: right;
	background-size: 300% 100%;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	transition: background-position 2s;
}
#page-body .active.animation-text-horizontal-tb-333 {
	background-position: left;
}



/* ========== ELEMENT ========== */



/* ========== MAIN-LP ========== */

/* main-lp */
#page-body #main-lp {
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 0;
	font-feature-settings: "palt";
	word-wrap: break-word;
	color: #333;
	font-family: 'Montserrat','Noto Sans JP',"ヒラギノ角ゴ Pro W6","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",MS PGothic,sans-serif;
	font-size: 15px;
	line-height: 1;
	letter-spacing: 0em;
	background: #f9f5ea;
}



/* ========== MAIN-VISUAL ========== */

/* main-visual */
#page-body .main-visual {
	box-sizing: border-box;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	line-height: 1;
}
#page-body .main-visual img {
	width: 100%;
}
#page-body .main-visual_content-pc {
	display: block;
}
#page-body .main-visual_content-smp {
	display: none;
}
#page-body .main-visual_content {
	box-sizing: border-box;
	width: 100%;
	margin: 0 0 16.2%;
	padding-top: 61.824%;
	position: relative;
	background-image: url("//ds-assets.store-image.jp/ilbisonte/sp/250710/main_pc.jpg");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}
#page-body .main-visual_content-pc .main-visual_month {
	width: 11%;
	max-width: 166px;
	position: absolute;
	left: 9.2%;
	top: 11%;
}
#page-body .main-visual_content-pc .main-visual_title {
	width: 21.8%;
	max-width: 324px;
	position: absolute;
	right: 8.7%;
	bottom: -14.3%;
}
@media (max-width: 767px) {
	#page-body .main-visual {
		width: 100%;
	}
	#page-body .main-visual_content-pc {
		display: none;
	}
	#page-body .main-visual_content-smp {
		display: block;
	}
	#page-body .main-visual_content {
		margin: 0 auto 55%;
		padding-top: 172.5%;
		background-image: url("//ds-assets.store-image.jp/ilbisonte/sp/250710/main_sp.jpg");
	}
	#page-body .main-visual_content-smp .main-visual_month {
		width: 23.8%;
		position: absolute;
		left: 6.8%;
		top: 5.2%;
	}
	#page-body .main-visual_content-smp .main-visual_title {
		width: 51.4%;
		position: absolute;
		right: 4.4%;
		bottom: -29%;
	}
}



/* ========== MAIN-CONTAINER ========== */

#page-body .main-container {
	width: 90%;
	max-width: 925px;
	margin: 0 auto;
	padding-top: 1px;
}
@media (max-width: 767px) {
	#page-body .main-container {
		width: 94%;
	}
}



/* ========== CONTENT ========== */

/* main-content_img */
#page-body .main-content_img {
	background: #fff;
	border-radius: 20px;
	overflow: hidden;
}
#page-body .main-content_img img {
	width: 100%;
	max-width: 100%;
}
@media (max-width: 767px) {
	#page-body .main-content_img {
		border-radius: 16px;
	}
}

/* main-content_txt */
#page-body .main-content_txt {
	position: relative;
}
#page-body .main-content_txt p {
	word-break: break-word;
	overflow-wrap: break-word;
	word-wrap: break-word;
	font-size: 18px;
	line-height: 2.05;
	letter-spacing: 0.12em;
}
#page-body .main-content_txt strong {
	font-weight: bold;
}
@media (max-width: 767px) {
	#page-body .main-content_txt p {
		font-size: 15px;
		line-height: 2.03;
		letter-spacing: 0.12em;
	}
}

/* main-content_row01 */
#page-body .main-content_row01 {
	width: 100%;
	margin: 0 auto 24%;
	display: flex;
	flex-direction: row-reverse;
}
@media (max-width: 767px) {
	#page-body .main-content_row01 {
		width: 100%;
		margin: 0 auto 33%;
		display: block;
	}
}

/* main-content_img_01 */
#page-body .main-content_row01 .main-content_img_01 {
	position: relative;
	z-index: 1;
	width: 69.2%;
	margin: 0;
}
@media (max-width: 767px) {
	#page-body .main-content_row01 .main-content_img_01 {
		width: 85%;
		max-width: none;
		margin: 30% auto 0;
	}
}
/*
#page-body .main-content_row01 .main-content_img_01 {
	position: relative;
	z-index: 1;
	width: 59.3%;
	margin: 0 1.8% 0 0;
	translate: -1% 2%;
	rotate: 4deg;
}
#page-body .main-content_row01 .main-content_img_01.active {
	animation: 0.8s ease-out forwards img01;
}
@media (max-width: 767px) {
	#page-body .main-content_row01 .main-content_img_01 {
		width: 98%;
		max-width: none;
		margin: 0 auto;
	}
}
@keyframes img01 {
	0% {
		translate: -1% 2%;
		rotate: 4deg;
	}
	100% {
		translate: 0% 0%;
		rotate: 2deg;
	}
}
*/

/* main-content_txt_01 */
#page-body .main-content_row01 .main-content_txt_01 {
	position: relative;
	z-index: 2;
	width: 51%;
	margin-top: 22%;
	margin-right: 8%;
}
@media (max-width: 767px) {
	#page-body .main-content_row01 .main-content_txt_01 {
		width: 78%;
		max-width: none;
		margin: 11% auto 0;
	}
}

/* main-content_row02 */
#page-body .main-content_row02 {
	width: 93.5%;
	margin: 0 auto 23%;
	display: flex;
	align-items: center;
}
@media (max-width: 767px) {
	#page-body .main-content_row02 {
		width: 100%;
		margin: 0 auto 32%;
		display: block;
	}
}

/* main-content_img_02 */
#page-body .main-content_row02 .main-content_img_02 {
	position: relative;
	z-index: 1;
	width: 52%;
	margin: 0;
}
@media (max-width: 767px) {
	#page-body .main-content_row02 .main-content_img_02 {
		width: 85%;
		max-width: none;
		margin: 0 auto;
	}
}
/*
#page-body .main-content_row02 .main-content_img_02 {
	position: relative;
	z-index: 1;
	width: 46.4%;
	margin: 0 0 0 2%;
	translate: 1% 2%;
	rotate: -4deg;
}
#page-body .main-content_row02 .main-content_img_02.active {
	animation: 0.8s ease-out forwards img02;
}
@media (max-width: 767px) {
	#page-body .main-content_row02 .main-content_img_02 {
		width: 78%;
		max-width: none;
		margin: 0 auto;
	}
}
@keyframes img02 {
	0% {
		translate: 1% 2%;
		rotate: -4deg;
	}
	100% {
		translate: 0% 0%;
		rotate: -2deg;
	}
}
*/

/* main-content_txt_02 */
#page-body .main-content_row02 .main-content_txt_02 {
	position: relative;
	z-index: 2;
	width: 36%;
	margin-top: 2%;
	margin-left: 9%;
}
@media (max-width: 767px) {
	#page-body .main-content_row02 .main-content_txt_02 {
		width: 78%;
		max-width: none;
		margin: 11% auto 0;
	}
}


/* ========== 55TH ========== */

/* main-55th */
#page-body .main-55th {
	width: 237px;
	margin: 0 auto 16%;
}
@media (max-width: 767px) {
	#page-body .main-55th {
		width: 140px;
		margin: 0 auto 30%;
	}
}



/* ========== DETAIL ========== */

/* main-detail */
#page-body .main-detail {
	width: 90%;
	max-width: 594px;
	margin: 0 auto;
}
#page-body .main-detail h3 {
	width: 62px;
	margin: 0 auto 7%;
}
@media (max-width: 767px) {
	#page-body .main-detail {
		width: 86%;
	}
	#page-body .main-detail h3 {
		width: 66px;
		margin: 0 auto 10%;
	}
}

/* main-detail_table */
#page-body .main-detail_table {
	width: 100%;
	max-width: 100%;
	margin: 0 auto 9%;
}
#page-body .main-detail_table tr {
	border-bottom: 1px solid #fff;
}
#page-body .main-detail_table th {
	padding: 11px 8px 8px;
	white-space: nowrap;
	text-justify: inter-ideograph;
	text-align-last: justify;
	font-weight: bold;
	font-size: 14.3px;
	line-height: 1.63;
	letter-spacing: 0.025em;
}
#page-body .main-detail_table td {
	padding: 11px 8px 8px 28px;
	font-size: 15.4px;
	line-height: 1.63;
	letter-spacing: 0.025em;
}
@media (max-width: 767px) {
	#page-body .main-detail_table {
		width: 100%;
		margin: 0 auto 13%;
	}
	#page-body .main-detail_table th,
	#page-body .main-detail_table td {
		vertical-align: top;
	}
	#page-body .main-detail_table th {
		width: 80px;
		padding: 13px 8px 10px;
		font-size: 13.2px;
	}
	#page-body .main-detail_table td {
		
		padding: 13px 8px 10px 19px;
		font-size: 13.2px;
	}
}

/* main-detail_btn */
#page-body .main-detail_btn a {
	display: block;
	max-width: 424px;
	margin: 0 auto;
	padding: 18px;
	border-radius: 100vh;
	text-align: center;
	font-weight: bold;
	font-size: 17px;
	line-height: 1;
	letter-spacing: 0.1em;
	border: 1px solid #333;
	background-color: #333;
	color: #fff;
}
#page-body .main-detail_btn a:hover,
#page-body .main-detail_btn a:focus {
	opacity: 1;
	border-color: #fff;
	background-color: #fff;
	color: #333;
}
#page-body .main-detail_btn a.type01 {
	border-color: #333;
	background-color: #333;
	color: #fff;
}
#page-body .main-detail_btn a.type01:hover,
#page-body .main-detail_btn a.type01:focus {
	opacity: 1;
	border-color: #fff;
	background-color: #fff;
	color: #333;
}
#page-body .main-detail_btn a.type02 {
	border-color: #333;
	background-color: transparent;
	color: #333;
}
#page-body .main-detail_btn a.type02:hover,
#page-body .main-detail_btn a.type02:focus {
	opacity: 1;
	border-color: #333;
	background-color: #333;
	color: #fff;
}
#page-body .main-detail_btn a:not(:first-child) {
	margin-top: 28px;
}
@media (max-width: 767px) {
	#page-body .main-detail_btn a {
		max-width: 334px;
		padding: 16px;
		font-size: 16px;
	}
	#page-body .main-detail_btn a:not(:first-child) {
		margin-top: 5%;
	}
}



/* ========== FOOTER ========== */

#page-body .main-footer {
	width: 100%;
	margin-top: 200px;
	padding: 66px 0;
	background: #efe9d9;
	text-align: center;
}
#page-body .main-footer a {
	font-weight: bold;
	font-size: 18px;
	line-height: 1;
	letter-spacing: 0.025em;
}
#page-body .main-footer a .arrow {
	position: relative;
	display: inline-block;
	margin-right: 15px;
	padding: 10px;
}
#page-body .main-footer a .arrow::before {
	content: '';
	width: 10px;
	height: 10px;
	border-top: solid 1px #333;
	border-right: solid 1px #333;
	position: absolute;
	left: 10px;
	top: 8px;
	transform: rotate(-135deg);
}
@media (max-width: 767px) {
	#page-body .main-footer {
		margin-top: 30%;
		padding: 45px 0;
	}
	#page-body .main-footer a {
		font-size: 14px;
	}
	#page-body .main-footer a .arrow {
		margin-right: 10px;
		padding: 9px;
	}
	#page-body .main-footer a .arrow::before {
		width: 8px;
		height: 8px;
	}
}



/* ========== UTILITY ========== */
#page-body .lp_viewpc_block {
	display: block;
}
#page-body .lp_viewpc_inline {
	display: inline;
}
#page-body .lp_viewpc_inline-block {
	display: inline-block;
}
#page-body .lp_viewpc_none {
	display: none;
}
#page-body .lp_viewsmp_block,
#page-body .lp_viewsmp_inline,
#page-body .lp_viewsmp_inline-block {
	display: none;
}
#page-body .lp_viewxs_block,
#page-body .lp_viewxs_inline,
#page-body .lp_viewxs_inline-block {
	display: none;
}
@media (max-width: 767px) {
	#page-body .lp_viewpc_block,
	#page-body .lp_viewpc_inline,
	#page-body .lp_viewpc_inline-block {
		display: none;
	}
	#page-body .lp_viewsmp_block {
		display: block;
	}
	#page-body .lp_viewsmp_inline {
		display: inline;
	}
	#page-body .lp_viewsmp_inline-block {
		display: inline-block;
	}
	#page-body .lp_viewsmp_none {
		display: none;
	}
}
@media (max-width: 425px) {
	#page-body .lp_viewxs_block {
		display: block;
	}
	#page-body .lp_viewxs_inline {
		display: inline;
	}
	#page-body .lp_viewxs_inline-block {
		display: inline-block;
	}
	#page-body .lp_viewxs_none {
		display: none;
	}
}
