@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Allura&family=Marcellus&family=Noto+Sans:ital,wght@0,100..900;1,100..900&family=Playfair+Display:ital,wght@0,400..900;1,400..900&family=Zen+Old+Mincho:wght@400;500;600;700&display=swap');
/* CSS Document */
html{
}
body{
	font-family: "Noto Sans" "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",  sans-serif;
	background-color: #FAFAFA;
	color: #333333;
}
h1,h2,h3,h4,h5,h6,p,li,a{
	font-size:16px;
	font-weight: normal; 
	margin: 0;
	line-height: 1.6;
}
body{
	position: relative;
	min-height: 100vh;
}
body::before{
	content: "";
	position: absolute;
	top: 20px;
	left: 20px;
	width: calc(100% - 40px);
	height: calc(100% - 40px);
	border: 1px solid #63645F;
	box-sizing: border-box;
	pointer-events: none;
	z-index: 3;
}
body > *{
	position: relative;
	z-index: 4;
}

/* ---------- common ---------- */
body:not(.gjs-dashed) .menu_all {
	display: none;
}

.menu_all.active{
	display: block!important;
}
.menu_all > div:not(:last-of-type){
	margin-bottom: 80px;
}
.fix_bt{
	position: fixed;
	z-index: 99;
	width: 40%;
	max-width: 60px;
	right: 0;
	top: 20%;
	margin: 0;
	padding: 0;
	flex-direction: column;
}
.fix_bt a{
	flex-direction: column;
	padding: 22px 15px;
	border-radius: 2px 0 0 2px;
	border: #383735 1px solid;
	margin: 0;
}
.fix_bt .bt1{
	background-color: #383735;
	gap: 5px;
}
.fix_bt .bt1 img{
	width: 13px;
}
.fix_bt .bt2{
	background-color: #fff;
}
.fix_bt a p{
	font-family: "Zen Old Mincho",  sans-serif;
	font-weight: 700;
	letter-spacing: 0.1em;
}
.mg_t1{
	margin-top: 50px;
}
.mg_b1{
	margin-bottom: 60px;
}
.mg_b2{
	margin-bottom: 40px;
}
.titlebox1{
	flex-direction: column;
	align-items: flex-start;
}
.titlebox1 h2{
	font-family: "Zen Old Mincho",  sans-serif;
	line-height: 1;
}
.titlebox2{
	align-items: center;
}
.titlebox3{
	gap: 10px;
	align-items: center;
	width: 100%;
}
.titlebox3 .en_title4{
	width: auto;
	margin: 0;
	line-height: 1;
}
.titlebox3 .line{
	flex: 1;
	height: 1px;
	background: #9A9A9A;
}
.cate1{
	margin-top: -60px;
	position: relative;
	z-index: 1;
}
.contact-form_a .form-box .check-wrap .check-box input[type="radio"] {
    border: 2px solid #EAEAEA;
}
.contact-form_a .form-box .box-wrap .box:not(.filebox) .inputbox > input, .contact-form_a .form-box .box-wrap .box .inputbox textarea {
    border: 2px solid #EAEAEA;
}
.contact-form_a .addressbox input {
    border: 2px solid #EAEAEA;
}
.contact-form_a .form-box .box-wrap .file-box input[type="file"] {
    border-radius: 2px;
	color: #333333;
}
.contact-form_a .send .send-bt {
	position: relative;
	align-items: center;
	justify-content: center;
	padding: 15px 30px;
	background-color: #383735;
	border-radius: 2px;
	min-width: 250px;
	box-sizing: border-box;
}
.contact-form_a .send .send-bt p {
    margin: 0;
	font-weight: 500;
	color: #fff;
	line-height: 1;
	white-space: nowrap;
	font-family: "Zen Old Mincho", sans-serif;
}
.contact-form_a .send .send-bt::after{
	content: "";
	position: absolute;
	width: 20px;
	aspect-ratio: 4 / 1;
	background-image: url("https://clasaloripel.com/system_panel/uploads/images/arrow1.svg");
	background-position: center center;
	background-size: 100% auto;
	top: 50%;
	right: 20px;
	transform:translate(0,-50%);
	transition: ease 0.3s;
}
.contact-form_a .send:hover::after {
    transform:translate(3px,-50%);
}

.contact-form_a .form-box .check-wrap .check-box input[type="radio"]:checked::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 10px;
    background-color: #000;
    border-radius: 50%;
    transform: translate(-50%, -50%);
}
.faq_c .box .qbox .q_icon {
    font-family: "Playfair Display",  sans-serif;
	font-weight: 400;
}
.faq_c .box .qbox h3 {
    font-family: "Zen Old Mincho",  sans-serif;
}
.faq_c .box .abox p {
    font-family: "Zen Old Mincho",  sans-serif;
}
.calendar_box {
	width: 100%;
	padding: 26px 24px;
	border: 4px solid #AAA9A4;
	border-radius: 10px;
	box-sizing: border-box;
}
.calendar_inner {
	position: relative;
	width: 100%;
	min-height: 420px;
	background: #d9d9d9;
	overflow: hidden;
}
.calendar_inner iframe {
	display: block;
	width: 100%;
	height: 420px;
	border: 0;
	aspect-ratio: 16 / 9;
}

.recruit_banner {
    position: relative;
    overflow: hidden;
	height: 600px;
}
.recruit_banner > img {
    display: block;
    width: 100%;
    height: auto;
}
.recruit_banner::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 70%;
    height: 100%;
    background: linear-gradient(
        90deg,
        rgba(99, 100, 95, 0.2) 0%,
        rgba(99, 100, 95, 1) 100%
    );
    clip-path: polygon(35% 0, 100% 0, 100% 100%, 0 100%);
    z-index: 1;
    pointer-events: none;
}
.recruit_banner .txtbox {
     position: absolute;
    top: 50%;
    right: 9%;
    transform: translateY(-50%);
    z-index: 2;

    width: 360px;
    flex-direction: column;
    align-items: center;
    gap: 28px;
    padding: 0;
}
.recruit_banner .txtbox .title{
    position: relative;
	flex-direction: column;
}
.recruit_banner .txtbox .title .itembox{
    position: absolute;
	top: -60px;
	left:-100px;
}
.recruit_banner .txtbox .title .default_txt2{
    border-bottom: #FFFFFF 1px solid;
	border-top: #FFFFFF 1px solid;
	padding: 5px 10px;
}
/* ---------- menu_wrap ---------- */
.pagelinks_1{
	gap: 5px;
}
.pagelinks_1 a{
	position: relative;
	background-color: #E2E2E0;
	border-radius: 2000px;
	padding: 6px 20px;
}
.pagelinks_1 a p{
	color: #63645F;
}
.pagelinks_a .en{
    background-color: #DBDBDB;
    color: #373B3E;
    line-height: 1;
    padding: 10px 12px;
    display: block;
    text-align: center;
	font-family: "Zen Old Mincho",  sans-serif;
}
.pagelinks_a .tab-wrap {
    position: relative; 
    cursor: pointer;
}
.pagelinks_a .tab-wrap.active .en {
    background-color: #373B3E;
    color: #FFF;
}
.pagelinks_a .tab-wrap.active .en::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -8px;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-top: 8px solid #373B3E;
}
.menu_wrap .width-1280-max{
	flex-direction: column;
	gap: 60px;
}
.menu_box_wrap{
	gap: 60px;
	flex-direction: column;
}
.menu_box_wrap .box_wrap {
	gap: 30px;
}
.menu_box_wrap .box_wrap .txtbox{
	width: calc(50% - 15px);
	flex-direction: column;
	gap: 40px;
	align-items: flex-start;
}
.menu_box_wrap .box_wrap .imgbox{
	width: calc(50% - 15px);
}
.menu_box_wrap .box_wrap .txtbox .recommended_box {
	position: relative;
	width: 100%;
	margin-top: 10px;
}
.menu_box_wrap .box_wrap .txtbox .recommended_box .titlelabel {
	position: absolute;
	top: -14px;
	left: 30px;
	background: #373B3E;
	padding: 8px 20px;
	z-index: 2;
}
.menu_box_wrap .box_wrap .txtbox .recommended_box .titlelabel p {
	color: #fff;
	line-height: 1.2;
	letter-spacing: 0.12em;
	margin: 0;
}
.menu_box_wrap .box_wrap .txtbox .txt-item{
	padding: 40px 30px 20px 30px;
	border: #222222 1px solid;
	flex-direction: column;
	align-items: flex-start;
}
.menu_box_wrap .box_wrap .txtbox .txt-item .item{
	position: relative;
	align-items: flex-start;
	gap: 14px;
	padding: 14px 0;
	width: 100%;
}
.menu_box_wrap .box_wrap .txtbox .txt-item .item::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 1px;
	background-image: repeating-linear-gradient(
		to right,
		#0E0E0F 0 3px,
		transparent 3px 6px
	);
}
.menu_box_wrap .box_wrap .txtbox .txt-item .item img{
	width: 22px;
}
.menu_box_wrap .box_wrap .txtbox .txt-item .item p{
	flex: 1;
}
.menu_box_wrap2{
	width: 100%;
}
.menu_box_wrap2 .box_wrap {
	gap: 40px;
	padding: 50px;
	border: #ADAAAA 1px solid;
}
.menu_box_wrap2 .box_wrap .txtbox{
	width: calc(60% - 20px);
	flex-direction: column;
	gap: 30px;
	align-items: flex-start;
}
.menu_box_wrap2 .box_wrap .imgbox{
	width: calc(40% - 20px);
}
.menu_box_wrap2 .box_wrap .txtbox h3{
	padding-bottom: 15px;
	border-bottom: #BFBFBF 1px solid;
	width: 100%;
	font-weight: 500;
}
.price span{
	font-size: 22px;
}
.menu_box_wrap3{
	width: 100%;
}
.menu_box_wrap3 .box_wrap {
	width: 100%;
	gap: 30px;
	flex-direction: column;
}
.menu_box_wrap3 .box_wrap .boxitem{
	width: 100%;
	justify-content: space-between;
	padding-bottom: 20px;
	border-bottom: #BFBFBF 1px solid;
}
.menu_box_wrap4{
	width: 100%;
}
.menu_box_wrap4 .box_wrap{
	gap: 10px;
}
.menu_box_wrap4 .box_wrap .boxitem{
	width: calc((100% - 30px)/4);
	flex-direction: column;
	gap: 20px;
}
.menu_box_wrap4 .box_wrap .boxitem .txtbox{
	gap: 20px;
	flex-direction: column;
	align-items: flex-start;
}

/* ---------- more ---------- */
.more_c a{
	background-color: #383735;
	border-radius: 2px;
	min-width: 250px;
}
.menu_more{
	width: 100%;
}
.menu_more a{
	position: relative;
	padding: 15px 30px;
	background-color: #383735;
	border-radius: 2px;
	width: 100%;
	border: none;
	gap: 30px;
}
.menu_more a img{
	width: 8px;
	aspect-ratio: 1 / 1;
	transition: transform 0.3s ease;
}
.menu_more a:hover img{
	transform: translateX(3px);
}
.menu_more a p{
	color: #fff;
}
.more_wrap{
	gap: 10px;
	justify-content: flex-start;
	margin-top: 10px;
}
.flow_more a{
	position: relative;
	padding: 5px 18px;
	border-radius: 2px;
	width: 100%;
	border: #B7ABA6 1px solid;
	gap: 5px;
}
.flow_more a img{
	width: 16px;
	aspect-ratio: 1 / 1;
}
.flow_more a p{
	font-family: "Zen Old Mincho",  sans-serif;
}
/* ---------- header ---------- */
.header_j{
	background-color: transparent;
	padding-top: 20px;
}
.header_j .menu-bt {
    flex-direction: column;
}
.header_j .menu-bt .menu{
    font-size: 14px;
	padding-top: 5px;
	font-family: "Playfair Display",  sans-serif;
	letter-spacing: 0.05em;
}
.header_j .menu-bt .line div {
    height: 1px;
    background-color: #383735;
}
.header_j .menu-bt .line {
    position: relative;
    width: 36px;
    height: 22px;
}
.international_bt {
    border: #383735 1px solid;
	border-radius: 2000px;
	padding: 10px 22px;
}
.international_bt p{
    position: relative;
	font-family: "Playfair Display",  sans-serif;
	font-size: 14px;
	letter-spacing: 0.05em;
	padding-left: 12px;
}
.international_bt p::before{
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 5px;
    height: 5px;
    background: #000;
    border-radius: 50%;
    transform: translateY(-50%);
}
.menu-wrap.burgermenu_d .ul .menu_box a p.en {
    font-family: "Playfair Display",  sans-serif;
	letter-spacing: 0.05em;
	font-weight: 500;
}
.menu-wrap.burgermenu_d .ul .menu_box a p.jp {
    font-family: "Noto Sans",  sans-serif;
	font-weight: 500;
}
.menu-wrap.burgermenu_d::after {
    background-color: #B4A289;
}
.menu-wrap.burgermenu_d .ul .menu_box a {
    border-bottom: 2px solid #fff;
}

/* ---------- pagetitle ---------- */
.pagetitle{
	position: relative;
	overflow: visible;
}
.pagetitle .box{
	position: relative;
	width: 100%;
    height: clamp(200px, 36vw, 300px);
	padding-top: 80px;
}
.pagetitle .box .bg_img_wrap2{
	position: relative;
	overflow: hidden;
}
.pagetitle .box .title_wrap{
	width: 100%;
	position: relative;
	z-index: 2;
	justify-content: center;
}
.pagetitle .box .titlebox{
	flex-direction: column;
	align-items: center;
}
.pagetitle .box .titlebox h1{
	background-color: #383735;
	padding: 2px 40px;
	color: #fff;
	font-family: "Zen Old Mincho",  sans-serif;
	position: relative;
	z-index: 3;
}

.pagetitle2{
	position: relative;
}
.pagetitle2 .scroll{
	position: absolute;
	right: 80px;
	bottom: -50px;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
}
.pagetitle2 .scroll p{
	writing-mode: vertical-rl;
	text-orientation: mixed;
	letter-spacing: 0.2em;
	margin: 0;
	color: #707070;
}
.pagetitle2 .scroll .line{
	width: 1px;
	height: 180px;
	background: #707070;
}
.pagetitle2 .box{
	height: auto;
}
.pagetitle2 .box .imgbox{
	position: relative;
	z-index: 1;
	max-width: 1280px;
	height: auto;
	width: 90%;
	margin: -15px auto 0; 
}
.pagetitle2 .box .imgbox img{
	display: block;
	width: 100%;
	height: auto;
}


.pagettle_links{
	position: absolute;
	left: 80px;
	bottom: -20px;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
}
.pagettle_links > p{
	margin: 0;
	font-size: 18px;
	letter-spacing: 0.08em;
}
.pagettle_links .linksbox{
	background-color: #383735;
	border-radius: 4px;
	flex-direction: column;
	padding: 30px;
	gap: 16px;
	min-width: 230px;
	box-sizing: border-box;
}
.pagettle_links .linksbox a{
	width: 100%;
	align-items: center;
	justify-content: space-between;
	border-bottom: #fff 1.5px dotted;
	padding-bottom: 8px;
	gap: 16px;
	box-sizing: border-box;
}
.pagettle_links .linksbox a p{
	color: #fff;
	font-family: "Zen Old Mincho",  sans-serif;
}
.pagettle_links .linksbox a img{
	width: 18px;
	transition: transform 0.3s ease;
}

.pagettle_links .linksbox a:hover img{
	transform: translateX(4px);
}
.pagetitle2{
	position: relative;
	z-index: 3;
	overflow: visible;
}

.main-wrap{
	position: relative;
	z-index: 1;
}
/* ---------- footer ---------- */
.footer_links{
	background-color: #272727;
	z-index: 2;
}
.footer_links .box_wrap{
	gap: 10px;
	padding-top: 80px;
	padding-bottom: 60px;
	border-bottom: #63645F 1px solid;
}
.footer_links .box_wrap .banner{
	width: calc((100% - 20px)/3);
	position: relative;
	display: block;
	overflow: hidden;
	border-radius: 4px;
}
.footer_links .box_wrap .banner img{
	border-radius: 4px;
	display: block;
	width: 100%;
	filter: brightness(0.7) saturate(0.7);
}
.footer_links .box_wrap .banner::before{
	content: "";
	position: absolute;
	inset: 0;
	background-color: rgba(0,0,0,0.45);
	z-index: 1;
}
.footer_links .box_wrap .banner::after{
	content: "";
	position: absolute;
	inset: 0;
	z-index: 2;
}
.footer_links .box_wrap .banner1::after{
	background-color: rgba(53, 132, 222, 0.18);
}
.footer_links .box_wrap .banner2::after{
	background-color: rgba(172, 159, 70, 0.18);
}
.footer_links .box_wrap .banner3::after{
	background-color: rgba(147, 143, 143, 0.18);
}
.footer_links .box_wrap .banner .txt{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 3;
	flex-direction: column;
	gap: 4px;
	width: 100%;
	text-align: center;
	padding: 20px;
}
.footer_links .box_wrap .banner .txt .en{
	font-size: 32px;
	color: #fff;
	letter-spacing: 0.1em;
	font-family: "Playfair Display",  sans-serif;
	font-weight: 700;
}
.footer_links .box_wrap .banner .txt .en span{
	color: #AF914C;
}
.footer_links .box_wrap .banner .txt .jp{
	font-size: 18px;
	color: #fff;
	letter-spacing: 0.05em;
	font-family: "Zen Old Mincho",  sans-serif;
}

.footer_d{
	margin-top: 0px;
	background-color: #272727;
	z-index: 2;
}
.footer_d .top_footer .rightbox .footer_list a{
	width: calc(100% / 3 - 60px / 3);
	border-bottom: none;
	padding-bottom: 5px;
}
.footer_d .top_footer .rightbox .footer_list a .en {
    font-size: 26px;
	color: #fff;
	letter-spacing: 0.05em;
	font-family: "Playfair Display",  sans-serif;
}
.footer_d .top_footer .rightbox .footer_list a .jp {
    font-size: 15px;
	color: #9B9B9B;
	letter-spacing: 0.05em;
	font-family: "Zen Old Mincho",  sans-serif;
	padding-left: 20px;
}
.international_bt2 {
    border: none;
	border-radius: 2000px;
	padding: 10px 22px;
	background-color: #fff;
}
.footer_d .top_footer .rightbox .bottom_bt {
    gap: 30px;
	justify-content: flex-end;
}
.footer_d .top_footer .leftbox {
    flex-direction: column;
	align-items: flex-start;
}
/* ---------- font ---------- */
.en_title{
	font-family: "Playfair Display",  sans-serif;
	font-size: 70px;
	letter-spacing: 0.15em;
    font-weight: 600;
}
.en_title2{
	font-family: "Playfair Display",  sans-serif;
	font-size: 56px;
	font-weight: 600;
	letter-spacing: 0.1em;
}
.en_title3{
	font-family: "Playfair Display",  sans-serif;
	font-size: 48px;
	font-weight: 600;
	letter-spacing: 0.1em;
}
.en_title4{
	font-family: "Playfair Display",  sans-serif;
	font-size: 30px;
	font-weight: 600;
	letter-spacing: 0.1em;
}
.default_title{ 
	font-size: 30px;
	letter-spacing: 0.05em;
	font-weight: 600;
}
.default_title2{
	font-size: 22px;
	letter-spacing: 0.05em;
}

.default_txt{
	font-size: 20px;
	letter-spacing: 0.05em;
}
.default_txt2{
	font-size: 18px;
	letter-spacing: 0.05em;
}
.default_txt3{
	font-size: 16px;
	letter-spacing: 0.05em;
}



.font-playfair{
	font-family: "Playfair Display",  sans-serif;
}

.font-zen{
	font-family: "Zen Old Mincho",  sans-serif;
}

/* ---------- default ---------- */
body .bg_img_wrap {
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}
body.on .bg_img_wrap .bg_img{
	display: none;
}
body .bg_img_wrap2 {
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}
body.on .bg_img_wrap2 > img{
	display: none;
}

a{
	display: inline-block;
	transition: ease 0.3s;
}
a:hover{
	opacity: 0.5;
}
a p,a,a i{
	color: #000000;
}
.font-medium{font-weight: 500;}
.font-semibold{font-weight: 600;}
.font-black{font-weight: 900;}

.pd_wrap{
	padding: 150px 80px 0;
}
.pd_wrap_all{
	padding: 150px 80px 150px;
}
.pd_wrap_side{
	padding-left: 80px;
	padding-right: 80px;
}

.cate_wrap > .cate{
	padding-top: 150px;
}


/* ANIME */
.sc-anime.topin.on{
	opacity:0;
	transform: translateY(-50px);
}
.sc-anime.topin.on.active{
	animation-name: topin;
	animation-duration: 1.2s;
	animation-timing-function: ease;
	animation-fill-mode: forwards;
}
.sc-anime.bottomin.on{
	opacity:0;
	transform: translateY(50px);
}
.sc-anime.bottomin.on.active{
	animation-name: bottomin;
	animation-duration: 1.2s;
	animation-timing-function: ease;
	animation-fill-mode: forwards;
}
.sc-anime.leftin.on{
	opacity:0;
	transform: translateX(-50px);
}
.sc-anime.leftin.on.active{
	animation-name: leftin;
	animation-duration: 1.2s;
	animation-timing-function: ease;
	animation-fill-mode: forwards;
}
.sc-anime.rightin.on{
	opacity:0;
	transform: translateX(50px);
}
.sc-anime.rightin.on.active{
	animation-name: rightin;
	animation-duration: 1.2s;
	animation-timing-function: ease;
	animation-fill-mode: forwards;
}
.sc-anime.fadein.on{
	opacity:0;
}
.sc-anime.fadein.on.active{
	animation-name: fadein;
	animation-duration: 1.2s;
	animation-timing-function: ease;
	animation-fill-mode: forwards;
}
.sc-anime.blurin.on{
	opacity:0;
	-ms-filter: blur(6px);
	filter: blur(6px);
}
.sc-anime.blurin.on.active{
	animation-name: blurin;
	animation-duration: 1.2s;
	animation-timing-function: ease;
	animation-fill-mode: forwards;
}
.sc-anime.blurin2.on{
	opacity:0;
	transform: translateY(50px);
	-ms-filter: blur(6px);
	filter: blur(6px);
}
.sc-anime.blurin2.on.active{
	animation-name: blurin2;
	animation-duration: 1.2s;
	animation-timing-function: ease;
	animation-fill-mode: forwards;
}

@keyframes topin {
	0% {
		opacity:0;
		transform: translateY(-50px);
	}
	100% {
		opacity:1;
		transform: translateY(0px);
	}
}
@keyframes bottomin {
	0% {
		opacity:0;
		transform: translateY(50px);
	}
	100% {
		opacity:1;
		transform: translateY(0px);
	}
}
@keyframes leftin {
	0% {
		opacity:0;
		transform: translateX(-50px);
	}
	100% {
		opacity:1;
		transform: translateX(0px);
	}
}
@keyframes rightin {
	0% {
		opacity:0;
		transform: translateX(50px);
	}
	100% {
		opacity:1;
		transform: translateX(0px);
	}
}
@keyframes upin {
	0% {
		transform: translateY(100%);
	}
	100% {
		transform: translateY(0);
	}
}
@keyframes fadein {
	0% {
		opacity:0;
	}
	100% {
		opacity:1;
	}
}
@keyframes fadeout {
	0% {
		opacity:1;
	}
	100% {
		opacity:0;
	}
}
@keyframes blurin {
	0% {
		opacity: 0;
		-ms-filter: blur(6px);
		filter: blur(6px);
	}
	100% {
		opacity:1;
		-ms-filter: blur(0px);
		filter: blur(0px);
	}
}
@keyframes blurin2 {
	0% {
		opacity: 0;
		transform: translateY(50px);
		-ms-filter: blur(6px);
		filter: blur(6px);
	}
	100% {
		opacity:1;
		transform: translateY(0px);
		-ms-filter: blur(0px);
		filter: blur(0px);
	}
}
/* color */
.txt-color-normal{color: #000000;}
.txt-white{color: #ffffff;}
.txt-red{color: red;}
.txt-color1{color: #433213}
.txt-color2{color: #F1F1E9}
.txt-color3{color: #9B9B9B}
.txt-color4{color: #EBF5E5}
.bg-white{background-color: #ffffff;}
.bg-black{background-color: black}
.bg-color1{background-color: #D7CFC4}
.bg-color2{background-color: #63645F}
.bg-color3{background-color: #B4A289}
.bg-color4{background-color: #DAD9D7}
.bg-color5{background-color: #383735}
.border-color1{border-color: #FFE93C}
.border-color2{border-color: #F1F1E9}
.border-color3{border-color: #021745}
.border-color4{border-color: #EBF5E5}

.hvr-txt-color-normal:hover{color: #000000;}
.hvr-txt-white:hover{color: #ffffff;}
.hvr-txt-red:hover{color: red;}
.hvr-txt-color1:hover{color: #FFE93C}
.hvr-txt-color2:hover{color: #F1F1E9}
.hvr-txt-color3:hover{color: #021745}
.hvr-txt-color4:hover{color: #EBF5E5} 
.hvr-bg-white:hover{background-color: #ffffff;}
.hvr-bg-black:hover{background-color: black}
.hvr-bg-color1:hover{background-color: #FFE93C}
.hvr-bg-color2:hover{background-color: #F1F1E9}
.hvr-bg-color3:hover{background-color: #021745}
.hvr-bg-color4:hover{background-color: #EBF5E5}
.hvr-border-color1:hover{border-color: #FFE93C}
.hvr-border-color2:hover{border-color: #F1F1E9}
.hvr-border-color3:hover{border-color: #021745}
.hvr-border-color4:hover{border-color: #EBF5E5}

/* ---------- IEのみ ---------- */
@media all and (-ms-high-contrast: none) {
}

/* ---------- 1280px ~ ---------- */
@media screen and (max-width: 1280px){
	.pd_wrap{
		padding: 150px 60px 0;
	}
	.pd_wrap_all{
		padding: 150px 60px 150px;
	}
	.pd_wrap_side{
		padding-left: 60px;
		padding-right: 60px;
	}
/* ---------- common ---------- */
	.pagetitle2 .scroll{
		display: none;
	}
/* ---------- header ---------- */
/* ---------- footer ---------- */
	.footer_links .box_wrap .banner .txt .en {
		font-size: 26px;
	}
/* ---------- font ---------- */
	.en_title{
		font-size: 60px;
	}
	.en_title2{
		font-size: 50px;
	}

}
/* ---------- 1080px ~ ---------- */
@media screen and (max-width: 1080px){
/* ---------- common ---------- */
	.pagetitle2 .pagettle_links .linksbox {
		padding: 20px;
		gap: 14px;
		min-width: 180px;
	}
	.pagetitle2 .pagettle_links{
		left: 40px;
		bottom: -30px;
	}
	.menu_box_wrap .box_wrap {
		flex-direction: column;
	}
	.menu_box_wrap .box_wrap .txtbox {
		width: 100%;
		gap: 30px;
	}
	.menu_box_wrap .box_wrap .imgbox {
		width: 60%;
	}
	.menu_box_wrap4 .box_wrap {
		gap: 30px 10px;
	}
	.menu_box_wrap4 .box_wrap .boxitem{
		width: calc((100% - 20px)/2);
	}
	.recruit_banner {
		height: 550px;
	}
	.recruit_banner::before {
        width: 100%;
        clip-path: none;
        background: rgba(99, 100, 95, 0.65);
    }
    .recruit_banner .txtbox {
        top: 50%;
        left: 50%;
        right: auto;
        transform: translate(-50%, -50%);
        width: 90%;
        max-width: 360px;
    }
	.recruit_banner .txtbox .title .itembox {
		width: 180px;
		top: -50px;
    	left: -80px;
	}
/* ---------- header ---------- */
/* ---------- footer ---------- */
	.footer_links .box_wrap .banner .txt .en {
		font-size: 20px;
	}
	.footer_links .box_wrap .banner .txt .jp {
		font-size: 14px;
	}
	.footer_d .top_footer .rightbox .bottom_bt {
		display: none;
	}
/* ---------- font ---------- */
	.en_title{
		font-size: 56px;
	}
	.en_title2{
		font-size: 46px;
	}
	.en_title3{
		font-size: 40px;
	}
	.en_title4{
		font-size: 26px;
	}
	.default_title{ 
		font-size: 28px;
	}
	.default_title2{
		font-size: 20px;
	}
	.default_txt{
		font-size: 20px;
	}
	.default_txt2{
		font-size: 18px;
	}
	.default_txt3{
		font-size: 16px;
	}
}
/* ---------- 768px ~ ---------- */
@media screen and (max-width: 768px){
	.pd_wrap{
		padding: 100px 50px 0;
	}
	.pd_wrap_all{
		padding: 100px 50px 100px;
	}
	.pd_wrap_side{
		padding-left: 50px;
		padding-right: 50px;
	}
	.cate_wrap > .cate{
		padding-top: 100px;
	}
/* ---------- common ---------- */
    .pagetitle2 .pagettle_links {
        position: static;
		margin-right: auto;
		padding-left: 10px;
    }
    .pagetitle2 .pagettle_links .linksbox {
        padding: 15px;
    }
	.cate1{
		padding-top: 100px;
	}
	.mg_b1 {
		margin-bottom: 40px;
	}
	.mg_t1 {
		margin-top: 40px;
	}
	.menu_box_wrap2 .box_wrap {
		gap: 20px;
		padding: 30px;
		flex-direction: column;
	}
	.menu_box_wrap2 .box_wrap .imgbox {
		width: 70%;
	}
	.menu_box_wrap2 .box_wrap .txtbox {
		width: 100%;
		gap: 20px;
	}
	.price span {
		font-size: 20px;
	}
/* ---------- header ---------- */
/* ---------- footer ---------- */
	.footer_links .box_wrap .banner {
		width: 100%;
		max-height:  160px;
	}
/* ---------- font ---------- */
	.en_title{
		font-size: 48px;
	}
	.en_title2{
		font-size: 42px;
	}
	.en_title3{
		font-size: 34px;
	}
	.default_title{ 
		font-size: 28px;
	}
	.default_title2{
		font-size: 18px;
	}
	.default_txt{
		font-size: 18px;
	}
	.default_txt2{
		font-size: 17px;
	}
	.default_txt3{
		font-size: 16px;
	}
}
/* ---------- スマートフォン ---------- */
/* ---------- 576px ~ ---------- */
@media screen and (max-width: 576px){
	.pd_wrap{
		padding: 80px 20px 0;
	}
	.pd_wrap_all{
		padding: 80px 30px 80px;
	}
	.pd_wrap_side{
		padding-left: 30px;
		padding-right: 30px;
	}
	.cate_wrap > .cate{
		padding-top: 80px;
	}
	body::before{
		top: 10px;
		left: 10px;
		width: calc(100% - 20px);
		height: calc(100% - 20px);
	}
/* ---------- common ---------- */
	.menu_all > div:not(:last-of-type){
		margin-bottom: 50px;
	}
	.more_c a{
		min-width: 200px;
		padding: 10px 30px;
	}
	.more_c a p {
		font-size: 14px;
	}
	.fix_bt {
		width: 20%;
		max-width: 45px;
	}
	.fix_bt a {
		padding: 20px 10px;
	}
	.cate1{
		padding-top: 100px;
	}
	.menu_box_wrap .box_wrap .imgbox {
		width: 100%;
	}
	.menu_box_wrap2 .box_wrap {
		padding: 30px 20px;
	}
	.menu_box_wrap2 .box_wrap .imgbox {
		width: 100%;
	}
	.menu_box_wrap3 .box_wrap .boxitem {
		flex-direction: column;
	}
	.menu_box_wrap3 .box_wrap .boxitem h4 {
		width: 100%;
	}
	.menu_box_wrap3 .box_wrap .boxitem .price {
		margin-left: auto;
	}
	.menu_box_wrap3 .box_wrap {
		gap: 10px;
	}
	.menu_box_wrap3 .box_wrap .boxitem {
		padding-bottom: 10px;
	}
	.price span {
		font-size: 18px;
	}
	.menu_box_wrap4 .box_wrap .boxitem{
		width: 100%;
	}
	.recruit_banner {
		height: 450px;
	}
	.recruit_banner .txtbox .title .itembox {
		width: 150px;
		top: -45px;
    	left: -80px;
	}
/* ---------- header ---------- */
	.header_j .international_bt {
		display: none;
	}
/* ---------- footer ---------- */
	.footer_links .box_wrap .banner {
		width: 100%;
		max-height:  140px;
	}
	.footer_d .top_footer .leftbox {
		max-width: 100%;
		align-items: center;
	}
	.footer_d .top_footer .leftbox .logo {
		max-width: 150px;
		
	}
/* ---------- font ---------- */
	.en_title{
		font-size: 34px;
	}
	.en_title2{
		font-size: 30px;
	}
	.en_title3{
		font-size: 26px;
	}
	.default_title{ 
		font-size: 22px;
	}
	.default_title2{
		font-size: 18px;
	}
	.default_txt{
		font-size: 18px;
	}
	.default_txt2{
		font-size: 16px;
	}
	.default_txt3{
		font-size: 14px;
	}
h1,h2,h3,h4,h5,h6,p,li,a{
	font-size:14px;
}
}
/* ---------- 350px ~ ---------- */
@media screen and (max-width: 350px){
}
