/*COLOR*/
.pink{
    color: #e4007f !important;
}
.green{
    color: #009e9d !important;
}
.blue{
    color: #009ce1 !important;
}
.yellow{
    color: #fecf1d !important;
}
.purple{
    color: #b600e4 !important;
}
.red{
    color: red !important;
}
.wrapper{
    width: 95%;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}
.wrap{
    width: 95%;max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
}
.main-content {
    line-height: 1.6em;
}
.nowrap{white-space: nowrap;}

/*BG COLOR*/
.bg-pink{
    background-color: #e4007f !important;
}
.bg-green{
    background-color: #009e9d !important;
}
.bg-blue{
    background-color: #009ce1 !important;
}
.bg-navy{
    background-color: #2c3e50 !important;
}
.bg-yellow{
    background-color: #fecf1d !important;
}
.bg-orange{
    background-color: #fa8500 !important;
}
.bg-purple{
    background-color: #b600e4 !important;
}
.bg-pink-light{
    background-color: #f6becf !important;
}
.bg-green-light{
    background-color: #72ce9f !important;
}
.bg-yellow-light{
    background-color: #ffe378 !important;
}
.bg-yellow-green-light{
    background-color: #5edc4f !important;
}
.bg-blue-light{
    background-color: #90d8ef !important;
}
.bg-gray {
    background-color: #666666!important;
}
.bg-black {
    background-color: #222!important;
}
.bg-blue-rgb-70 {
    background: rgb(0 156 225 / 70%) !important;
}
.bg-green-rgb-80 {
    background: rgb(67 159 157 / 80%) !important;
}
.bg-orange-rgb-85 {
    background: rgb(250 133 0 / 85%) !important;
}
/* WP管理画面 スタイル「塗りつぶし」 */
.has-black-background-color {
    background-color: #000000;
}
.has-cyan-bluish-gray-background-color {
    background-color: #abb8c3;
}
.has-white-background-color {
    background-color: #fff;
}
.has-pale-pink-background-color {
    background-color: #f78da7;
}
.has-vivid-red-background-color {
    background-color: #cf2e2e;
}
.has-luminous-vivid-orange-background-color {
    background-color: #ff6900;
}
.has-luminous-vivid-amber-background-color {
    background-color: #fcb900;
}
.has-light-green-cyan-background-color {
    background-color: #7bdcb5;
}
.has-vivid-green-cyan-background-color {
    background-color: #00d084;
}
.has-pale-cyan-blue-background-color {
    background-color:#8ed1fc;
}
.has-vivid-cyan-blue-background-color {
    background-color:#0693e3;
}
.has-vivid-purple-background-color {
    background-color:#9b51e0;
}
/*CONTAINTER*/
.container{
    width: calc(100vw - 280px);
    max-width: 1500px;
    margin: 0 auto;
}
.snav{
	flex-basis:280px;
	-webkit-flex-basis:280px;
	max-width:280px;
}
/*TITLE*/
.page-h3{
    font-size: 28px;
    font-weight: 700;
}
.page-h3_small{
    display: block;
    font-size: 12px;
    letter-spacing: 5px;
}
.page-h3_small:before{
    content: "";
    display: block;
    width: 100%;
    height: 5px;
    background: url(/images/common/line.svg) repeat-x;
    background-size: contain;
    margin: 10px 0;
}
.page-title{
    font-size: 3rem;
    color: inherit;
    font-weight: 700;
    padding: 100px 20px 20px;
    background: url(/images/common/bg_page_title.jpg) top center no-repeat;
    margin: 40px auto;
    text-align: center;
    line-height: 1.2;
}
.page-title.bg-curriculum {
    background: url(/images/common/logo-crafteriaux.png) top center no-repeat;
    background-size: 250px;
}
.page-title .page-title-main,
.page-title .season-page-title-main{
    font-weight: inherit;
    font-size: 3rem;
    vertical-align: middle;
    line-height: 1.4;
}
.page-title .page-title-sub{
    font-weight: inherit;
    font-size: 2.3rem;
    vertical-align: middle;
}
.page-title .page-title-sub +  .page-title-main{
    margin-left: 15px;
}
.page-title-lead {
    color: #217f7d;
    font-size: 1.2rem;
    font-weight: bold;
    text-align: center;
    margin-bottom: 3.5rem;
}
.page-heading,
.season-page-heading
{
    font-size: 28px;
    font-weight: 700;
    position: relative;
    line-height: 2.5rem;
}
.page-heading_small{
    display: block;
    font-size: 12px;
    letter-spacing: 5px;
}
.page-heading_small:before{
    content: "";
    display: block;
    width: 100%;
    height: 5px;
    background: url(/images/common/line.svg) repeat-x;
    background-size: contain;
    margin: 10px 0 0;
}
.page-heading-sub{
    font-size: 22px;
    font-weight: 700;
    position: relative;
}
p.narrow {
    width: 85%;
    margin-right: auto;
    margin-left: auto;
}
.border-gray-5 {border: 5px solid #ccc;}
.border-gray-1 {border: 1px solid #ddd;}
.border-btm-gray-1 {border-bottom: 1px solid #ddd;}

/*LINK*/
.expand-link { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.pc-hidden {
    display: none;
}

@media screen and (max-width: 980px) {
    .container{
        width :100%;
        max-width:100%;
    }
    p.narrow{
        width: 90%;
    }
    .page-title{
        padding: 100px 0 20px;
        font-size: 2.2rem;
    }
	.page-title .page-title-main{
        display: block;
        line-height: 1.4;
        margin-top: 1rem;
		font-size: 21px;
	}
    .page-title .season-page-title-main{
        display: block;
        line-height: 1.4;
        margin-bottom: 1.5rem;
		font-size: 3.2rem;
	}
    .season-page-heading {
        font-size: 24px;
        font-weight: 700;
        position: relative;
        line-height: 2.5rem;
        text-align: center;
    }
    .pc-hidden {
        display: inline;
    }
}

/*20230824*/
a, a i, a small, a span, a img {
    transition: .1s ease-in-out;
}
/*TOP NAV*/
.tnav{
	background: #009e9d;
	padding: 0.5em 20px;
}
.tnav-seo{
	margin-bottom: 0;
	color: #fff;
	font-size: clamp(12px, 1.3vw, 12px);
}
.tnav-seo span{
	color: #fff;
	font-size: clamp(12px, 1.3vw, 12px);
}
.tnav-seo br{
	display: none;
}
.tnav-payment a{
	display: inline-block;
	background: #eee;
	padding: 0.2em 1em;
	margin-right: 1px;
	border-radius: 2px;
	font-size: clamp(11px, 1.3vw, 12px);
	transition: .1s ease-in-out;
}
.tnav-payment a:hover{
	background: #fecf1d ;
	color: #000;
}
.tnav-guide a{
	display: block;
	margin-left: 0.5em;
	color: #fff;
	font-size: clamp(11px, 1.3vw, 12px);
	transition: .1s ease-in-out;
}
.tnav-guide a:before{
	content: "●";
	font-size: 60%;
	vertical-align: 0.1em;
}
.tnav-guide a:hover,
.tnav-guide a:hover:before{
	color: #fecf1d;
}
@media screen and (max-width: 980px) {
	.tnav{
		align-items: center;
		padding: 0.7em 20px;
	}
	.tnav-left{
		flex: 1;
		flex-wrap: wrap;
		margin-left: 50px;
	}
	.tnav-seo{
		flex-basis: 100%;
		margin-bottom: 5px;
		line-height: 1;
	}
	.tnav-payment{
		margin-top: 2px;
	}
}
@media screen and (max-width: 920px) {
	.tnav {
		padding: 0.7em 70px;
	}
	.tnav-left{
		margin-left: 0;
	}
}
@media screen and (max-width: 680px) {
	.tnav-guide{
		display: none;
	}
}
@media screen and (max-width: 480px) {
	.tnav-seo{
		text-align: center;
		line-height: 1.2;
	}
	.tnav-seo span{
		display: none;
	}
	.tnav-seo br{
		display: block;
	}
	.tnav-payment{
		margin-top: 2px;
		width: 100%;
		text-align: center;
	}
}

/*HEADER*/
.header{
	padding: 0.5em 20px;
}
.header-h1{
	font-size: clamp(16px, 1.8vw, 18px);
	flex-basis: clamp(160px, 3vw, 280px);
	margin-right: 1em;
	padding: 0.2em 0;
}
.header-search{
	flex-basis: auto;
	flex: 1;
}
.header-search_form {
    display: flex;
	width: auto;
	margin-bottom: 5px;
	padding: 7px 1em;
	border: 1px solid #555;
    border-radius: 30px;
}
.header-search_form input{
    padding-right: 20px;
    width: 50%;
    border: none;
}
.header-search_btn{
    top: 50%;
    transform: translateY(-50%);
    left: 50px;
    background: transparent;
    border: none;
    cursor: pointer;
}
.header-search_btn i{
    color: #999;
}
.header-search_detail{
    font-size: 14px;
    color: #009ce1;
    text-decoration: underline;
}
.header-cv {
    flex-basis: auto;
	text-align: right;
	margin-left: 1em;
}
.header-cv_inq {
    background: transparent !important;
    border-radius: 0;
    padding: 0;
    color: #000;
    line-height: 1em;
    vertical-align: 3px;
	font-size: 14.4px;
}
.header-cv_inq i{
	color: #000;
}
.header-cv_inq:hover,
.header-cv_inq:hover i{
	color: #e4007f;
}
.header-cv_tel {
    font-size: 20.5px;
	pointer-events: none;
    font-weight: 700;
    color: #009e9d;
}
.header-cv_tel small{
    color: #009e9d;
    vertical-align: 2px;
	font-size: 16px;
}
.header-cv_sns a{
	padding-left: 7px;
}
.header-cv_sns a:first-child{
	padding-left: 0;
}
.header-cv_sns small{
	letter-spacing: 0;
	font-size: 12.3px;
}
.header-cv_sns i{
	font-size: 21px;
	vertical-align: middle;
	padding-right: 1px;
}
.header-cv_sns--line i,
.header-cv_sns--line small{
	color: #07b53b;
}
.header-cv_sns--youtube i,
.header-cv_sns--youtube small{
	color: #fc1c19;
}
.header-cv_sns--insta i,
.header-cv_sns--insta small{
	color: #d13579;
}
.header-banners_area{
	padding: 0 20px;
}
.header-banner{
	flex-basis: 19.5%;
	margin: 0 0 0.2em;
	border: 1px solid #ccc;
}
.header-banner img{
	width: 100%;
	height: auto;
}
/* 目次　SNSアイコン */
.header-menu_sns {
    text-align: right;
}
.header-menu_sns small{
	letter-spacing: 0;
	font-size: 14px;
}
.header-menu_sns i{
	font-size: 24px;
	vertical-align: middle;
	padding-right: 1px;
}

@media screen and (max-width: 980px) {
	.header-cv_sns small{
		font-size: 11px;
	}
	.header-cv_inq {
		font-size: 14px;
	}
	.header-banner{
		flex-basis: 24.5%;
	}
	.header-banner:last-of-type{
		display: none;
	}
     .header-menu_sns small{ /*目次上のSNSアイコン*/
        font-size: 12.46px;
    }
}
@media screen and (max-width: 780px) {
	.header-cv_tel {
		pointer-events: inherit;
	}
}
@media screen and (max-width: 680px) {
	.header-h1 {
		flex-basis: clamp(130px, 3vw, 280px);
	}
	.header {
		padding: 0.5em 10px;
	}
	.header-banners_area {
		padding: 0 10px 10px;
	}
	.header-banner{
		flex-basis: 49.5%;
	}
}
@media screen and (max-width: 580px) {
	.header-search {
		order: 2;
		flex: 100%;
		margin-top: 0.5em;
	}
}

/* app_blade 緊急のお知らせ */
.temporary-info {
    background-color: #ffc2c2;
    padding: .5rem;
}
.temporary-info--title {
    text-align: center;
    color: red;
}
.temporary-info--content {
    margin: 0 8%;
    text-align: center;
    font-size: .9rem;
    line-height: 1.2;
}
@media screen and (max-width: 980px) {
    .temporary-info--content {
        margin: 0 3%;
        font-size: .85rem;
    }
}


/*GNAV*/
.gnav{
	flex: 1;
}
.gnav-ol{
	overflow: hidden;
}
.gnav-li a{
    padding: 0 1.5em 0 0;
    font-size: clamp(12px, 1.3vw, 15px);
    line-height: 1em;
    letter-spacing: 0;
}
.gnav-li a:hover{
	color: #e4007f;
}
.gnav-li_sp{
	display: none;
}
@media screen and (max-width: 680px) {
	.gnav-li_sp{
		display: block;
		width: 100%;
		padding: 1em !important;
        border-top: 1px dotted #fff;
    }
	.gnav-li_sp a{
		display: block;
		color: #fff;
		padding: 0.5em 0 !important;
		text-align: left;
	}
	.gnav-li_sp a:before{
		content:"●";
		font-size: 80%;
		vertical-align: 2px;
		padding-right: 2px;
		color: #fff;
	}
}

/*SUBNAV*/
.sub {
    padding: 1em 20px;
    background:#eee;
}

/* Sticky gray menu bar for PC */
@media screen and (min-width: 981px) {
    #sub-header.sub {
        position: sticky;
        top: 0;
        left: 0;
        right: 0;
        z-index: 1001;
    }
}

.sub-left,
.menu-trigger_right{
    display: none !important;
}
.sub-right_member a{
	letter-spacing: 0;
	margin-right: 1em;
	font-size: clamp(12px, 1.3vw, 15px);
}
.sub-right_member i,
.sub-right_cart i {
	font-size: 18px;
	vertical-align: -2px;
	padding-right: 2px;
	color: #111;
}
.sub-right_member a:first-child {
    padding-right: 0;
    margin-right: 0;
    border-right: none;
}
.sub-right_member--new small{
	letter-spacing: 0;
}

.has-items i {color: #e4007f !important;}
.is-signed span, .is-signed i {color: #439f9d !important;}
.is-signed span {padding-right: 5px; margin-right: 5px; border-right: 1px solid #666;}
.is-signed a {color: #666;}
.is-signed a:hover {color: #e4007f;}

@media screen and (max-width: 980px){
	.sub-right{
		width: auto;
	}
    .sub-left{
        display: block !important;
        position: fixed;
        top:10px;
        right: auto;
        left: 15px;
        z-index: 9999999;
    }
	.sub-left_span{
		display: block;
		font-size: 11px;
		color: #fff;
		margin-top: 2px;
	}
	.menu-trigger,
	.menu-trigger span {
		display: inline-block;
		transition: all .2s;
		box-sizing: border-box;
		border: none;
		background: transparent;
	}
	.menu-trigger span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 2px;
		background: #fff;
	}
	.menu-trigger span:nth-of-type(1) {
		top: 0;
	}
	.menu-trigger span:nth-of-type(2) {
		top: 9px;
	}
	.menu-trigger span:nth-of-type(3) {
		top: 18px;
	}
    .sub-left .menu-trigger_left{
        width: 40px;
        height: 20px;
    }
	.sidr-left-open .menu-trigger_left span:nth-of-type(1) {
		transform: translateY(3px) rotate(-45deg);
		width: 80%;
		top: .3rem;
		left: .3rem;
	}
	.sidr-left-open .menu-trigger_left span:nth-of-type(2) {
		opacity: 0;
	}
	.sidr-left-open .menu-trigger_left span:nth-of-type(3) {
		transform: translateY(-14px) rotate(45deg);
		width: 80%;
		top: 1.5rem;
		left: .3rem;
	}
	.sidr-left-open .snav-item_ol li a i, .sidr-left-open .snav-event_list li .snav-event_list-month {
		color: #faee00;
	}
	.sidr-left-open .snav-item_ol li a {
		padding: .7rem .5rem .7rem 1.2em !important;
		color: #fff;
	}
	.sidr-left-open .snav-event_list li .snav-event_list-month {
		top: 10px;
	}
	.sidr-left-open .snav-event_list-item {
		color: #fff;
		border-color: #fff;
		padding: .4rem .5rem;
	}
	.sidr-left-open .snav-event_list-item:hover {
		color: #389ce1;
		border: 1px solid #fff;
		background: #ffffff;
	}
}
@media screen and (max-width: 920px) {
    .menu-trigger_right{
        display: block !important;
        position: fixed;
        width: 40px;
        height: 48px;
        top: 10px;
        right: 15px;
        z-index: 9999999;
    }
    .menu-trigger_right-box {
        position: relative;
    }
    .menu-trigger_right:after{
        content: "メニュー";
        display: block;
        font-size: 11px;
        text-align: center;
		letter-spacing: -1px;
        padding-top: 23px;
		color: #fff;
    }
	.sidr-right-open .menu-trigger_right span:nth-of-type(1) {
		transform: translateY(3px) rotate(-45deg);
		width: 80%;
		top: .3rem;
		left: .3rem;
	}
	.sidr-right-open .menu-trigger_right span:nth-of-type(2) {
		opacity: 0;
	}
	.sidr-right-open .menu-trigger_right span:nth-of-type(3) {
		transform: translateY(-14px) rotate(45deg);
		width: 80%;
		top: 1.5rem;
		left: .3rem;
	}
    #sub-header.flex_justify{
        justify-content: center;
        font-size: 1.2em;
        left: 0;
        right: 0;
        margin-left: auto;
        margin-right: auto;
        width: 100vw;
        max-width: 100vw;
        z-index: 1000;
    }
    #sub-header {
        left: 0;
        right: 0;
        margin-left: auto;
        margin-right: auto;
        width: 100vw;
        max-width: 100vw;
        z-index: 1000;
    }
}
@media screen and (max-width: 680px) {
    .sub-right{
        text-align: center;
    }
    #sub-header {
        position: relative;
        transition: background-color 0.3s, box-shadow 0.3s;
        justify-content: center;
        font-size: 1.2em;
        left: 0;
        right: 0;
        margin-left: auto;
        margin-right: auto;
        width: 100vw;
        max-width: 100vw;
        z-index: 1000;
    }
    #sub-header.fixed {
        position: fixed;
        top: 0;
        left: 0;
        width: 100vw;
        background-color: #009e9d;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
        z-index: 1001;
    }
    #sub-header.fixed a {
        color: white !important;
        font-size: 1em;
    }
    #sub-header.fixed i {
        color: white !important;
        font-size: 1.3em;
    }
    #sub-header .has-items i {color: #e4007f !important;}
    #sub-header.fixed small {
        color: white !important;
    }

}
@media screen and (max-width: 480px) {
	.sub {
		padding: 1em 10px;
	}
}


/*パンくず*/
.breadcramb {display: flex; flex-wrap: wrap; justify-content: end; list-style-type: none; padding-right: 20px;}
.breadcramb li {position: relative; padding-left: 20px;}
.breadcramb li::before {content: "\f0da"; position: absolute; left: 10px; top: 1px; line-height: inherit; font-family: "Font Awesome 5 Free"; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; display: inline-block; font-style: normal; font-weight: 900; font-variant: normal; text-rendering: auto; color: #888;}
.breadcramb li:first-child::before {content: "\f015"; left: 0; top: 1px; line-height: inherit;}
@media screen and (max-width: 980px) {
    .breadcramb {
        padding-left: 0;
    }
}

/* 画像サイズの調整 */
figure.square {position: relative; margin: 0; width: 100%; padding-top: 100%;}
figure.square img {position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover;}

/* ページャ */
.screen-reader-text {display: none;}
.nav-links {display: flex; flex-wrap: wrap; align-items: center; justify-content: center; margin-bottom: 100px;}
.nav-links a {background: #009e9d; border-radius: 50%; color: #fff; margin-left: 2px; width: 36px; height: 36px; line-height: 36px; text-align: center;}
.nav-links span {background: #ccc; border-radius: 50%; color: #fff; margin-left: 2px; width: 36px; height: 36px; line-height: 36px; text-align: center;}
.nav-links .prev,
.nav-links .next {background: transparent; font-size: 48px !important; color: #ccc; padding: 0 5px !important; line-height: 24px;}
.nav-links a:hover {background: #e4007f;}
.nav-links a.prev:hover,
.nav-links a.next:hover {color: #009e9d; background: none;}
.nav-links .dots {width: 48px; background: transparent; display: inline-block; padding: 0 5px; font-size: 38px; color: #ccc;}

/* アラート */
.alert {margin: 1rem auto; padding: 1rem 1rem 1rem 4.5rem; border-radius: 15px; display: flex; align-items: center; position: relative;}
.alert-success {color: #ffffff; background-color: #439f9d !important;}
.alert-error, .alert-danger {color: #fff; background-color: #e63e80 !important;}
.alert-info {color: #000; background-color: #a0d8ea !important;}

.alert::before {position: absolute; font-family: "Font Awesome 5 Free"; font-weight: 900; font-size: 2rem; margin-left: -4.5rem; padding: 0 1rem; height: 100%; display: flex; align-items: center; justify-content: center; max-width: 3.5rem; width: 3.5rem; box-sizing: border-box; border-radius: 10px 0 0 10px;}
.alert-success::before {content: '\f581'; background: #009ce1; color: #ffffff;}
.alert-error::before, .alert-danger::before {content: '\f119'; background: #facf4f; color: #e63e80;}
.alert-info::before {content: '\f129'; background: #1b84b9; color: #ffffff;}


/*SIDR MENU*/
.sidr,
.sidr h3{
    box-shadow: none;
    background: transparent;
    padding: 0;
    font-family: 'Noto Sans JP', sans-serif !important;
}
.sidr.left {
    position: relative;
    height: auto;
    left: inherit;
    right: inherit;
    background: #eee;
    border-right: 1px solid #999;
    z-index: 999;
}
.sidr.right {
    position: relative;
    width: 100%;
    height: auto;
    left: inherit;
    right: inherit;
}
.snav-banners{
	background: #fff;
	padding: 20px 20px 0 20px;
}
.snav-banner{
	border: 1px solid #ccc;
}
.snav-banner:last-of-type{
	margin-bottom: 0 !important;
}
.snav-item{
    background: #fff;

}
.snav-item_h3{
    font-size: 15px !important;
    font-weight: 900 !important;
    letter-spacing: 0;
}
.snav-item_ol li {
    line-height: 1.2em;
}
.snav-item_ol li a{
    position: relative;
    display: block;
    font-size: 13px;
    font-weight: 500;
    padding: 5px 0 5px 1.5em !important;
}
.snav-item_ol li a i {
    position: absolute;
    left: 0.5em;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	transform: translateY(-50%);
    line-height: inherit;
    color: #e63e80;
}


/* アコーディオンメニュー */
input#toggle1, input#toggle2 {
    display: none;
}

.option {
    position: relative;
    margin-bottom: 1em;
    padding-bottom: 7px;

}


.contents {
    transition: all 0.3s;
}


.snav-item-label {
    border: solid 1px #ccc;
    border-radius: 28px;
    padding: 0.5em 5em 0.5em 1em;
    /* padding: 5px 10px 5px !important; */
    display: block;
    box-shadow: 0px 2px 8px -6px #003d58;
	background-color:#fff;
    color: #333;
    font-weight: bold;
    position: absolute;
    bottom: -1em;
    right: 0;
    left: 0;
    margin: 0 auto;
    text-align: center;
    cursor:pointer;
    width: fit-content;
    padding-right: 2em

}

label.snav-item-label i {
    margin-left: 10px;
    transition: transform 0.3s;
    position: absolute;
    right: 5px;
}


.snav-item-label::before {
    content: "もっと見る";

}

.fa-chevron-down::before {
    margin-right: 5px;
}

input.toggle:checked + .snav-item-label::before {
    content: "閉じる";
}


.contents ol.nolist {
    margin-bottom: 2rem;
}

.contents .accordion_list {
    max-height: 0;
    opacity: 0;
    display:none;
    transition: max-height 0.3s ease;/*要素の最大高さが変化するときにアニメーションを適用 */

}

/* アコーディオンメニューをクリックしたとき */
input.toggle:checked + .snav-item-label + .contents .accordion_list {
    max-height: 1500px;
    opacity: 1;
    display: block;
    transition: max-height 1.5s ease, opacity 0.3s ease;
}

input.toggle:checked + .snav-item-label i {
    transform: rotateX(180deg) !important;

}


input.toggle:checked + .snav-item-label + .contents {
    padding-bottom: 1em;
}



@media screen and (max-width: 980px) {
    .snav-item-label {
    margin-bottom: 15px;
}
}





.snav-event_list li {
    position: relative;
    margin-bottom: 0 !important;
    font-size: 13px;
    font-weight: 500;
    padding-top: 3px !important;
    padding-left: 3.5em !important;
    line-height: 1.5em;
    min-height: 1.5rem;
}
.snav-event_list li a:first-child {
    position: absolute;
    left: 0;
    top: 6px;
    color: #e63e80;

    font-size: 16px;
    width: 40px;
    text-align: right;
}
.snav-event_list li a {
    display: inline-block;
    font-size: 13px;
}
.snav-event_list-item {
    font-weight: 400; border: 1px solid #ffcfe2; padding: .15rem .3rem; border-radius: 5px; margin-bottom: .25rem;
    /* border: 1px solid #eb9dbc; */
}
.snav-event_list-item:hover {
    color: #e63e80;
    border: 1px solid #eb9dbc; background: #f9e7ee;
}
@media screen and (min-width: 980px) {
    /* 商品詳細ページのみサイドバーなしで表示 */
    .no-sidr-left .container {
        flex-basis: 100%;
        -webkit-flex-basis: 100%;
        max-width: 100%;
    }
    .no-sidr-left #sidr-left {
        display: none;
    }
    /* .no-sidr-left .sub-right {
        width: 100%;
        text-align: right;
    } */
    /* .no-sidr-left .sub-left {
        display: block !important;
        position: fixed;
        top: 15px;
        right: auto;
        left: 15px;
        background: #fff;
        border-radius: 5px;
        padding: .5rem .3rem .5rem .5rem;
        z-index: 9999999;
    } */
    /* .no-sidr-left .menu-trigger_left {
        width: 35px;
        height: 20px;
        pointer-events: inherit;
    } */
    /* .no-sidr-left #sidr-left {
        width: 300px;
        background: #009ce1;
        box-shadow: none;
        padding-top: 60px;
    } */
    /* .no-sidr-left .sidr.left {
        position: fixed;
        left: -300px;
        right: auto;
        top: 0;
        bottom: 0;
        overflow-y: auto;
        z-index: 999999;
    } */
    /* .no-sidr-left .snav-item {
         letter-spacing: 0;
        text-align: left;
        background: transparent;
        padding: 20px 0 !important;
    } */
    /* .no-sidr-left .snav-item_h3 {
        margin-bottom: 0 !important;
        padding: 10px !important;
        background: #faee00 !important;
        color: #222 !important;
    } */
}
@media screen and (max-width: 980px) {
    #sidr-left{
        width: 300px;
        background: #009ce1;
        box-shadow: none;
        padding-top: 60px;
    }
    .sidr.left {
        position: fixed;
        left: -300px;
        right: auto;
        top: 0;
        bottom: 0;
        overflow-y: auto;
        z-index: 999999;
    }

    .snav-item {
        color: #fff;
        letter-spacing: 0;
        text-align: left;
        background: transparent;
        padding: 0 !important;


    }
    .snav-item_h3{
        margin-bottom: 0 !important;
        padding: 10px !important;
        background: #faee00 !important;
        color: #222 !important;
    }
    .snav-item_ol li {
        line-height: 1.5em;
    }

    .snav-item_ol li a:hover,
    .snav-item_ol li.current a{
        background: rgba(255,255,255,0.4);
    }
    .snav-event_list li .snav-event_list-month {
        font-size: 14px !important;
    }
	.snav-banners{
		display: none;
	}
}
@media screen and (max-width: 920px) {
    #sidr-right{
        width: 300px;
        height: 100%;
        background: #009e9d;
        box-shadow: 2px 5px rgba(0, 0, 0, 0.1);
        padding-top: 60px;
        opacity: 0;
    }
    .sidr-right-open #sidr-right {
        opacity: 1;
    }
    .sidr.right {
        position: fixed;
        left: auto;
        right: -300px;
    }
    #sidr-right .gnav-li{
        flex-basis:100%;
        -webkit-flex-basis:100%;
        max-width:100%;
    }
    #sidr-right .gnav-li a {
        display: block;
        font-size: 16px;
        font-weight: 500;
        padding: 15px 0 15px 1em !important;
        border-top: 1px dotted #fff;
        color: #fff;
        letter-spacing: 0;
        text-align: left;
    }
    #sidr-right .gnav-li a:hover{
        background: rgba(255,255,255,0.4);
    }
}



/*FOOTER CV*/
.footer-cv{
    background: url(/images/common/bk.jpg) center center;
    background-size: cover;
}
.footer-cv:after{
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.5);
}
.footer-cv_item{
    position: relative;
    z-index: 1;
}
.footer-cv_p{
    margin-bottom: 20px;
    color: #fff;
    font-size: 21px;
    font-weight: 700;
    z-index: 1;
}
.footer-cv_tel{
    padding: 20px 50px !important;
    border: 1px solid #fff;
    background: rgba(255,255,255,0.3);
    font-size: 28px;
    font-weight: 700;
    color: #fff;
    letter-spacing: 4px;
}
.footer-cv_tel small{
    font-size: 14px;
    color: #fff;
}


/*CV*/
.cv-item{
	flex-basis:33%;
	-webkit-flex-basis:33%;
	max-width:33%;
    color: #fff;
    font-size: 21px;
}
.cv-item small{
    margin-top: 5px;
    font-size: 14px;
    color: #fff;
    line-height: 1.4em;
}
.cv-item small br{
    display: none;
}
.cv-item_inq{
    background: #009e9d;;
}
.cv-item_catalog{
    background: #e4007f;
}
.cv-item_group{
    background: #009ce1;
}
.cv-item:hover{
    background: #faee00;
    color: #222;
}
.cv-item:hover small{
    color: #222;
}
@media screen and (max-width: 1480px) {
    .cv-item small{
        font-size: 12px;
    }
}
@media screen and (max-width: 1380px) {
    .cv-item small br{
        display: block;
    }
}
@media screen and (max-width: 1280px) {
    .cv-item{
        font-size: 18px;
        padding: 20px 10px !important;
    }
}
@media screen and (max-width: 680px) {
    .cv-item {
        flex-basis:100%;
        -webkit-flex-basis:100%;
        max-width:100%;
        margin-bottom: 5px;
    }
    .cv-item small {
        font-size: 14px;
    }
    .cv-item small br{
        display: none;
    }
}



/*FOOTER SEO*/
.footer-seo{
  background: #eee;
}
.footer-block{
    padding: 2rem 20px;
}
.footer-site-info {
    text-align: left;
}
.footer-site-logo-img {
    max-width: 200px;
    margin-top: .5rem;
}
.footer-company-info {
    display: flex;
    flex-wrap: wrap;
    margin-top: 3rem;
}
.footer-company-info-text {
    flex-basis: 20em;
    line-height: 1.4rem;
    font-weight: 400;
}
.footer-company-info-text span {
    display: block;
    font-size: 130%;
}
.footer-company-logo-img {
    max-width: 200px;
    margin-left: -1rem;
}
.footer-company-logo-img-2 {
    max-width: 200px;
    margin: 1rem 0 0 -.3rem;
}

.footer-company-info_sns a {
    margin-top: 10px;
    padding-left: 7px;
}

.footer-company-info_sns a:first-child{
	padding-left: 0;
}

.footer-company-info_sns i {
    font-size: 21px;
    vertical-align: middle;
    padding-right: 1px;
}

.footer-links {
    flex: 1;
    display: flex;
    flex-wrap: wrap;
    padding: 0;
}
.footer-links_ul{
    list-style: none;
    margin: 0 2em 2em 0;
    padding: 0;
}
.footer-links_ul li {
    line-height: 1.4;
    margin-right: 0.8rem;
    padding: 0.3em 0 0.3em 1.2em;
    text-indent: -1.2em;
}
.footer-links_ul li,
.footer-links_ul li a {
    color: #404040;
}
.footer-links_ul li a:hover {
    color: #e4007f;
}
.footer-links_ul a::before {
    content: "●";
    color: #e4007f;
    padding-right: 5px;
    font-size: .8rem;
}
.footer-seo_h6{
  font-size: 18px;
  font-weight: 700;
}
.footer-seo_ol li{
  display: inline-block;
  margin:0 2px 5px !important;
}
.footer-seo_ol li a{
    display: inline-block;
    background: #fecf1d;
    border-radius: 10px;
    padding: 5px 10px 7px !important;
    line-height: 1em;
    font-size: 12px;
    font-weight: 500;
    color: #222;
}
.footer-seo_ol li a:hover{
    color: #fff;
    background: #009ce1;
}
.footer-seo_ol:nth-of-type(2) li a{
    color: #fff;
    background: #009ce1;
}
.footer-seo_ol:nth-of-type(2) li a:hover {
    color: #222;
    background: #fecf1d;
}
@media screen and (max-width:1680px) {
    .footer-links_ul {
        margin: 0 5em 2em 0;
    }
}
@media screen and (max-width: 680px) {
    .footer-block {
        padding: 2rem 0 1rem;
    }
    .footer-company-info {
        flex-basis: 100%;
    }
    .footer-company-info-text,
    .footer-links {
        flex-basis: 100%;
    }
    .footer-site-info,
    .footer-company-info-text{
        text-align: center;
    }
    .footer-links{
        margin-top: 2em;
        justify-content: space-between;
    }
    .footer-links_ul{
        width: 49%;
        margin: 0 0 1em 0;
        padding-left: 2em;
    }
    .footer-links_ul li,
    .footer-links_ul li a {
        color: #404040;
    }
}
@media screen and (max-width: 480px) {
    .footer-links_ul{
        width: 100%;
    }
}

/*FNAV*/
.fnav-a a{
  padding: 0 10px;
  border-left: 1px solid #666;
  color: #666;
  display: inline-block;
  line-height: 1em;
}
.fnav-a a:first-child{
  border-left: none;
}
.fnav-copy{
  color: #666;
  letter-spacing: 2px;
}
@media screen and (max-width: 1580px) {
  .fnav-a a{
    font-size: 12px;
    letter-spacing: 0;
  }
}
@media screen and (max-width: 1380px) {
  .fnav-a{
    display:flex;
    display:-webkit-flex;
    flex-wrap:wrap;
    -webkit-flex-wrap:wrap;
  }
  .fnav-a a{
    flex-basis:20%;
    -webkit-flex-basis:20%;
    max-width:20%;
    border-left: none;
    padding-left: 0;
    text-align: left;
    padding: 10px 0;
  }
  .fnav-a a::before{
    content: "●";
    color: #e4007f;
    padding-right: 5px;
  }
}
@media screen and (max-width: 1280px) {
  .fnav-a a{
    flex-basis:25%;
    -webkit-flex-basis:25%;
    max-width:25%;
  }
}
@media screen and (max-width: 680px) {
    .footer-cv_p {
        font-size: 18px;
    }
  .fnav-a a{
    flex-basis:50%;
    -webkit-flex-basis:50%;
    max-width:50%;
  }
  .fnav-a a:last-child{
    flex-basis:100%;
    -webkit-flex-basis:100%;
    max-width:100%;
  }
}

/*Footer_Banner*/
#footer-banner {
    position: fixed;
    bottom: 0;
    left:  280px;
    right: 0;
    background: #eee;
    display: flex;
    align-items: center;
    justify-content: center;
    border-top: 1px solid #999;
    z-index: 999;
}
#detail-footer-banner {
    position: fixed;
    bottom: 0;
    width: calc(100vw);
    background: #eee;
    display: flex;
    align-items: center;
    justify-content: center;
    border-top: 1px solid #999;
    z-index: 999;
}
@media screen and (max-width: 980px) {
    #footer-banner {
        width:100%;
        left: 0;
	}
    #footer-banner a, #detail-footer-banner a {height: auto;}
}

/*TOTOP*/
#totop {
    position: fixed;
    bottom: 10px;
    right: 0;
    background: rgb(255 253 255 / 85%);
    padding: .5rem 2rem;
    border-radius: 50%;
    z-index: 99999;
}
.totop{
    display: block;
    width: 50px;
}
.totop:hover{
    opacity: 1;
}
@media screen and (max-width: 680px) {
    #totop {
        padding: .5rem 1.5rem;
        right: 2px;
        bottom: 30px;
    }
    .totop{
        width: 30px;
    }
}

/*LINE ANIMATION*/
.line{
    width: 90%;
    height: 1px;
    background: #999;
}
.line-to_left{
    margin: 0 0 0 auto;
}
.line-to_left[data-aos="line__toleft"] {
    transform: translateX(100vw);
    opacity: 0;
}
.line-to_left[data-aos="line__toleft"].aos-animate {
    transform: translateX(0);
    opacity: 1;
}
.line-to_right[data-aos="line__toright"] {
    transform: translateX(-100vw);
    opacity: 0;
}
.line-to_right[data-aos="line__toright"].aos-animate {
    transform: translateX(0);
    opacity: 1;
}
.stripe{
    width: 1px;
    height: 90%;
    background: #999;
}
.stripe-to_top[data-aos="stripe__totop"] {
    transform: translateY(-100vh);
    opacity: 0;
}
.stripe-to_top[data-aos="stripe__totop"].aos-animate {
    transform: translateY(0);
    opacity: 1;
}
.stripe-to_bottom[data-aos="stripe__tobottom"] {
    transform: translateY(100vh);
    opacity: 0;
}
.stripe-to_bottom[data-aos="stripe__tobottom"].aos-animate {
    transform: translateY(0);
    opacity: 1;
}

/*BUTTON*/
.button {font-size: 18px; font-weight: 700; margin: 0 auto; text-align: center; }
.button button {color: #fff; border: none; background: #009e9d; min-width: 40%; padding: 1rem 3rem 1rem 2rem; cursor: pointer;  position: relative;}
.button i {
	position: absolute;
	font-size: 21px;
	color: #fff;
	right: 1rem;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
.button button:hover { background: #faee00;}
.button button:hover, .button button:hover i { color: #009e9d;}
.button-flex-wrap {display: flex; display: -webkit-flex; justify-content: center; -webkit-justify-content: center;}
.button-flex-wrap button + button {margin-left: 1rem;}
.button-icon-left button {padding: 1rem 2rem 1rem 3rem;}
.button-icon-left button i {left: 1rem; right: unset;}

.button-blue button {background: #009ce1;} /* リンクボタン（基本）で使用 */
.button-blue button:hover, .button-blue button:hover i {color: #009ce1;} /* リンクボタン（基本）で使用 */
.button-gray button {background: #777;}
.button-gray button:hover, .button-gray button:hover i {background: #444; color: #fff;}

@media screen and (max-width: 980px) {
    .button-flex-wrap { flex-wrap: wrap; }
    .button-flex-wrap button + button {margin-left: 0; margin-top: 1rem;}
}
@media screen and (max-width: 680px) {
    .button button {width: 70%; padding: 1rem 2.5rem 1rem 1rem;}
}

[data-scroll="in"] .char {
    transition: transform .3s cubic-bezier(.3, 0, .3, 1), opacity .3s linear;
    transition-delay: calc( 100ms * var(--char-index) );
}
[data-scroll="out"] .char {
    opacity: 0;
    transform: translateY( .25em );
}

/**
 * Module
 */
 .swal-title { font-size: 21px; }

 .loading {position: fixed; left: 0; top: 0; z-index: 999999; width: 100%; height: 100%; background: rgba(255,255,255,.5);}
 .loading + .loading {display: none;}
 /*
 .loader {color:#7cd1f9; font-size: 20px; margin: 100px auto; width: 1em; height: 1em; border-radius: 50%; position: relative;text-indent: -9999em; -webkit-animation: load 1.3s infinite linear;animation: load 1.3s infinite linear;-webkit-transform: translateZ(0);-ms-transform: translateZ(0);transform: translateZ(0);}
 @-webkit-keyframes load {
    0%,100% {box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;}
    12.5% {box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;}
    25% {box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;}
    37.5% {box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;}
    50% {box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;}
    62.5% {box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;}
    75% {box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;}
    87.5% {box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;}
}
@keyframes load {
    0%,100% {box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;}
    12.5% {box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;}
    25% {box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;}
    37.5% {box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;}
    50% {box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;}
    62.5% {box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;}
    75% {box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;}
    87.5% {box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;}
}
*/
.loader-wrap {position: absolute; left: 0; right: 0; top: 0; bottom: 150px; width: 100px; height: 100px; margin: auto; -webkit-transform: rotateZ(45deg); transform: rotateZ(45deg); margin-bottom: 150px; opacity: 0.5;}
.loader-wrap .loader {float: left; width: 50%; height: 50%; position: relative; -webkit-transform: scale(1.1); -ms-transform: scale(1.1); transform: scale(1.1);}
.loader-wrap .loader:before {content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #fecf1d; -webkit-animation: foldpapaer 2.4s infinite linear both; animation: foldpapaer 2.4s infinite linear both; -webkit-transform-origin: 100% 100%; -ms-transform-origin: 100% 100%; transform-origin: 100% 100%;}
.loader-wrap .loader-2 {-webkit-transform: scale(1.1) rotateZ(90deg); transform: scale(1.1) rotateZ(90deg); background-color: #009ce1;}
.loader-wrap .loader-3 {-webkit-transform: scale(1.1) rotateZ(180deg); transform: scale(1.1) rotateZ(180deg); background-color: #e4007f;}
.loader-wrap .loader-4 {-webkit-transform: scale(1.1) rotateZ(270deg); transform: scale(1.1) rotateZ(270deg); background-color: #009e9d;}
.loader-wrap .loader-2:before {-webkit-animation-delay: 0.3s; animation-delay: 0.3s;}
.loader-wrap .loader-3:before {-webkit-animation-delay: 0.6s; animation-delay: 0.6s;}
.loader-wrap .loader-4:before {-webkit-animation-delay: 0.9s; animation-delay: 0.9s;}

@-webkit-keyframes foldpapaer {
    0%,
    10% {
        -webkit-transform: perspective(140px) rotateX(-180deg);
        transform: perspective(140px) rotateX(-180deg);
        opacity: 0;
    }
    25%,
    75% {
        -webkit-transform: perspective(140px) rotateX(0deg);
        transform: perspective(140px) rotateX(0deg);
        opacity: 1;
    }
    90%,
    100% {
        -webkit-transform: perspective(140px) rotateY(180deg);
        transform: perspective(140px) rotateY(180deg);
        opacity: 0;
    }
}

@keyframes foldpapaer {
    0%,
    10% {
        -webkit-transform: perspective(140px) rotateX(-180deg);
        transform: perspective(140px) rotateX(-180deg);
        opacity: 0;
    }
    25%,
    75% {
        -webkit-transform: perspective(140px) rotateX(0deg);
        transform: perspective(140px) rotateX(0deg);
        opacity: 1;
    }
    90%,
    100% {
        -webkit-transform: perspective(140px) rotateY(180deg);
        transform: perspective(140px) rotateY(180deg);
        opacity: 0;
    }
}


/*20231101パンフダウンロード*/
/** {outline: 1px solid magenta;}*/
.catalog .page-title{
	font-size: clamp(24px, 3.8vw, 38px);
	line-height: 1.2;
	padding: 100px 0 20px;
}
.catalog .page-heading{
	font-size: clamp(18px, 2.8vw, 28px);
}
.catalog .catalog-wrap{
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
}
.catalog .catalog-download_body,
.catalog .catalog-form_body{
	display: flex;
	flex-wrap: wrap;
	flex-basis: calc(101% - 180px);
    margin-right: -1%;
}
.catalog .catalog-download_wrap,
.catalog .catalog-form_wrap{
	flex-basis: 24%;
	margin-right: 1%;
	margin-bottom: 1em;
	display: flex;
	flex-wrap: wrap;
}
.catalog .catalog-download_wrap{
	flex-basis: 19%;
}
.catalog .catalog-download_img,
.catalog .catalog-form_img{
	width: 100%;
	position: relative;
	background: #fff;
}
.catalog .catalog-download_img{
	background: #eee;
}
.catalog .catalog-download_img:before,
.catalog .catalog-form_img:before{
	content: "";
	display: block;
	padding-top: 100%;
}
.catalog .catalog-download_a,
.catalog .catalog-form_input{
	text-align: center;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	padding: 10px;
}
.catalog .catalog-download_a img,
.catalog .catalog-form_input img{
	width:auto;
	height:auto;
	max-width:100%;
	max-height:100%;
	border: 1px solid #999;
}
.catalog .form-head{
	letter-spacing: 0 !important;
}
.catalog .catalog-form_check{
	display: flex;
	align-items: flex-start;
}
.catalog .catalog-form_check--label{
	line-height: 1.1;
	padding-left: 0.3em;
}
.catalog .catalog-form_check input{
	margin-top: 0.3em;
}
.catalog .catalog-a{
	color: #009ce1;
	font-weight: 700;
}
.catalog .catalog-a:hover{
	color: #e4007f;
}
.catalog .catalog-form_wrap label:hover {
    cursor: pointer;
}
.catalog-download_p{
	line-height: 1.1;
}
.catalog-banner {
	width: 100%;
	max-width: 980px;
}
@media screen and (max-width: 1280px) {
	.catalog-lead br{
		display: none;
	}
	.catalog .catalog-download_wrap{
		flex-basis: 24%;
	}
	.catalog .catalog-form_wrap{
		flex-basis: 32.3%;
	}
}
@media screen and (max-width: 780px) {
	.catalog .catalog-download_wrap{
		flex-basis: 32.3%;
	}
}
@media screen and (max-width: 480px) {
	.catalog .page-title {
		padding: 60px 0 0;
		margin: 0px auto;
		background-size: auto 60px;
	}
	.catalog .form-wrap{
		padding: 10px 10px 30px !important;
	}
	.catalog .catalog-download_body,
	.catalog .catalog-form_body{
		justify-content: space-between;
	}
	.catalog .catalog-download_wrap,
	.catalog .catalog-form_wrap{
		flex-basis: 49%;
		margin-right: 0;
	}
	.catalog .form-head {
		margin-top: 1rem;
		margin-bottom: 0.2rem;
	}
}


/*20231121かんたん見積もり*/
.guid .page-title {
    font-size: clamp(24px, 3.8vw, 38px);
    line-height: 1.2;
}
.guid .page-title_obi {
    position: relative;
    background-color: #f5d43e;
    height: 4em;
}
.guid .page-title_obi::before {
    content: "";
    position: absolute;
    top: 10px;
    left: 0;
    width: 100%;
    border-top: 2px dashed #fff;
}
.guid .page-heading {
    font-size: clamp(16px, 2.5vw, 24px);
    line-height: 1.3;
}
.guid .page-heading a {
    font-size: clamp(16px, 2.5vw, 24px);
    color: #009ce1;
    font-weight: 700;
}
.guid .guid-wrap {
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
}
.guid .quotation-guid_body {
    display: flex;
    flex-wrap: wrap;
    margin-right: -1%;
}
.guid .quotation-body_left {
    flex-basis: 62%;
    margin-right: 2%;
}
.guid .quotation-body_right {
    flex-basis: 36%;
}
.guid .quotation-body_right h3 {
    display: flex;
    background: #eac53a;
    margin-bottom: 5px !important;
}
.guid .quotation-body_right h3 b {
    background: #c22074;
    display: inline-block;
    /* width: 50px; */
    margin-right: 10px;
    padding: 15px!important;
    color: #fff;
    font-size: clamp(21px, 2vw, 28px);
    text-align: center;
}
.guid .quotation-body_right h3 span {
    display: flex;
    align-items: center;
    font-size: clamp(16px, 1vw, 18px);
    font-weight: 700;
}
.guid .quotation-body_right--p {
    padding-left: 50px;
    margin: 20px 0 !important;
}
.guid .quotation-body_right--p a {
    color: #009ce1;
    font-weight: 700;
}
.guid .cart-b::before {
    content: '';
    display: inline-block;
    width: 15px;
    height: 15px;
    background-image: url(../images/guid/guid-cart.png);
    background-repeat: no-repeat;
    background-size: contain;
    vertical-align: middle;
    margin-right: 3px;
}
.product-next-btn {
    background: #009e9d;
    color: #fff;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.4em;
}
.product-next-btn:hover {
    background: #e4007f;
    color: #fff;
}
@media screen and (max-width: 580px) {
	.guid .quotation-body_left {
		flex-basis: 100%;
	}
	.guid .quotation-body_right {
		flex-basis: 100%;
        order: -1;
	}
    .guid .quotation-body_right--p {
       padding-left: 0;
    }
    .guid .page-title_obi {
        display: none;
    }
    .guid .page-title {
        margin: 20px auto!important;
    }
    .guid .quotation-body_right h3 span {
       font-size: clamp(18px, 4vw, 21px);
    }
}

/*20231208サンプル請求ページ*/
/** {outline: 1px solid magenta;}*/
.trial .page-title {
    font-size: clamp(24px, 3.8vw, 48px);
    margin-bottom: 1.5rem !important;
}
.trial .page-heading {
    font-size: clamp(18px, 2.5vw, 24px);
}
.trial .trial-ul {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    padding-left: 0;
}
.trial .trial-list {
    flex-basis: 33.3%;
    display: flex;
    flex-direction: column;
    align-items: center;
    border-right: 2px dashed #a1a1a1;
    padding: 0.5em 2em;
    margin-bottom: 2em;
}
.trial .trial-list:nth-child(3n) {
    border-right: none;
}
.trial .trial-list_img {
    text-align: center;
    margin-bottom: 1em;
    min-height: 80px;
}
.trial .trial-list_h3 {
    font-size: clamp(14px, 1vw, 18px);
    font-weight: 700;
    color: #eac539;
    margin-bottom: 0.5em;
    text-align: center;
}
.trial .trial-list p {
    font-size: clamp(14px, 1vw, 16px);
    margin-bottom: 0;
}
.trial .cautionary_ul {
    padding-left: 1em;
}

/*　▼申し込みフォーム▼　*/
.trial .shopping-order-sub-title {
    margin-top: 0;
    margin-bottom: 0.2em;
    font-weight: 700;
    font-size: clamp(16px, 1.5vw, 18px);
}
.trial .trial-sample_wrap {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.trial .trial-wrap_num{
	flex-basis: 25em;
	margin-right: 2em;
}
.trial .trial-wrap_num .form-head{
	flex-basis: 11em;
}
.trial .trial-wrap_name .form-head{
	flex-basis: 9em;
}
.trial .trial-wrap_num .form-body,
.trial .trial-wrap_name .form-body{
	flex: 1;
}
.trial .trial-wrap_name{
	flex: 1;
}
.trial input, select, textarea {
    font-size: clamp(12px, 1vw, 16px) !important;
}
.trial .trial-list p a {
    font-size: clamp(12px, 1vw, 16px);
    font-weight: 700;
    color: #009ce1;
}
.trial .form-wrap {
    padding: 10px 10px 20px 10px;
}
.trial .trial-wrap_name .form-control {
    background-color: #f0eee9;
}

@media screen and (min-width: 601px) {
    .trial .form-head {
        flex-basis: 11em;
    }
    .trial .form-body {
        flex: 1;
    }
}
@media screen and (max-width: 1160px) {
    .trial .trial-sample_wrap {
        display: block;
    }
    .trial .trial-wrap_num {
        margin-right: 0;
    }
    .trial .trial-wrap_name .form-head {
        flex-basis: 11em;
    }
    .trial .trial-sample_wrap {
        margin-bottom: 2em !important;
    }
    .trial .trial-wrap {
        margin-bottom: 5px !important;
    }
}
@media screen and (max-width: 680px) {
    .trial .trial-ul {
        justify-content: space-between;
    }
	.trial .trial-list {
        flex-basis: 48%;
    }
    .trial .trial-list {
        border-right: none;
    }
    .trial .trial-list {
        padding: 0;
        margin-bottom: 2.5em;
    }
    .trial .page-title-lead {
        text-align: left;
    }
    .trial .trial-list_img {
        margin-bottom: 0.5em;
    }
}
@media screen and (max-width: 600px) {
    .trial .trial-sample_wrap {
        margin-bottom: 25px !important;
        border-bottom: 1px solid #fff;
        padding-bottom: 28px !important;
    }
    .trial .form-head {
        margin-top: 0.5rem;
    }
    .trial .p-postal-code {
        width: 20% !important;
    }
    .trial .p-phone {
        width: 15% !important;
    }
    .trial .trial-sample_wrap .form-row {
        margin-bottom: 0;
    }
}
@media screen and (max-width: 580px) {
    .trial-forpc {
        display: none;
    }
}
@media screen and (max-width: 480px) {
    .trial .page-title {
        padding: 60px 0 0;
        margin: 0px auto;
        background-size: auto 60px;
    }
    .trial .trial-list {
        flex-basis: 95%;
        flex-direction: inherit;
        margin: 0 auto 1.5em;
    }
    .trial .trial-list_img {
        flex-basis: 15%;
        margin-right: 1em;
        min-height: inherit;
        margin-bottom: 0;
    }
    .trial-list_box {
        flex: 1;
    }
    .trial .trial-list_h3 {
        text-align: left;
        margin-bottom: 0;
    }
}

@media screen and (max-width: 680px) {
  #sub-header {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100vw;
    margin: 0 auto;
    position: relative;
    z-index: 1000;
  }
  #sub-header .gnav-ol {
    justify-content: center;
    width: 100%;
  }
}
