@charset "utf-8";

/* common */
.sub_visual {
	display: none;
	position: relative;
	width: calc(100% - 30px);
	max-width: 1820px;
	margin: 0 auto 90px;
}
.sub_visual.active {
	display: block;
}
.sub_visual .visual_inner {
	display: flex;
	justify-content: center;
	width: 100%;
	height: 309px;
	background-position: center;
	background-repeat: no-repeat;
	border-radius: 30px;
	overflow: hidden;
}
.sub_visual .visual_ttl {
	display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
	height: calc(100% - 70px);
}
.sub_visual .visual_ttl h2 {
	font-size: 4.4rem;
	color: var(--white-basic-color);
	line-height: 1.5;
}
.sub_visual .location {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 17px;
}
.sub_visual .location li {
	position: relative;
	font-size: 1.6rem;
	color: var(--white-basic-color);
	line-height: 1.5;
}
.sub_visual .location li.home {
	height: 24px;
}
.sub_visual .location li.home img {
	display: block;
	margin-top: 3px;
}
.sub_visual .location li:not(:last-child) {
	margin-right: 12px;
	padding-right: 19px;
}
.sub_visual .location li:not(:last-child):after {
	content:'';
	display: block;
	position: absolute;
	top: 7px;
	right: 0;
	width: 7px;
	height: 9px;
	background: url('../images/common/ico_menu_arrow.png') no-repeat center;
}
.sub_visual .visual_tab {
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
}
.sub_visual .visual_tab ul {
	display: flex;
	align-items: center;
	justify-content: center;
	width: calc(100% - 30px);
	max-width: 1280px;
	border-radius: 30px 30px 0 0;
	background-color: var(--white-basic-color);
	overflow: hidden;
}
.sub_visual .visual_tab li {
	width: 100%;
	height:70px;
	background-color: var(--gray-color600);
}
.sub_visual .visual_tab li.on {
	background-color: var(--white-basic-color);
}
.sub_visual .visual_tab li a {
	display: flex;
    align-items: center;
    justify-content: center;
	width: 100%;
	height: 100%;
	font-size: 1.8rem;
	font-weight: 500;	
	color: var(--gray-color450);
	text-align: center;
}
.sub_visual .visual_tab li.on a {
	font-weight: 700;
	color: var(--gray-color400);
} 

.container.sub {
	margin: 90px 0 150px;
}
.container.company {
	margin-bottom: 0 !important;
}

.sub_ttl_box {
	text-align: center;
	margin-bottom: 40px;
}
.sub_ttl_box.a_left {
	text-align: left;
}
.sub_ttl_box h3 {
	font-size: 3.4rem;
	line-height: 1.5;
}
.sub_ttl_box h3 img {
	max-width: 80px;
	vertical-align: middle;
}
.sub_ttl_box .cont {
	margin-top: 22px;
	font-size: 2.6rem;
	line-height: 1.5;
}

/* user */
.user_form {
}
.user_form .small_form_inner {
	width: calc(100% - 30px);
	max-width: 450px;
	margin: 0 auto;
}
.user_form .item_menu_tab .tab_btn {
	margin: 0 13px;
}
.user_form .find_type_box {
	margin: -10px 0 20px;
}
.user_form .find_type_box .radio_wrap {
	display: flex;
	align-items: center;
	justify-content: center;
}
.user_form .user_btn_box {
	margin-top: 20px;
}
.user_form .find_type_guide p {
	font-size: 1.3rem;
	color: var(--red-color025);
	line-height: 1.3;
}
.user_form .input_box {
	margin-bottom: 30px;
}
.user_form .login_checkbox {
	margin-top: -10px;
}
.user_form .other_user_menu {
	margin: 30px 0;
}
.user_form .other_user_menu ul {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	flex-wrap: wrap;
}
.user_form .other_user_menu li {
	position: relative;
	margin: 5px 0;
}
.user_form .other_user_menu li:not(:last-child):after {
	content:'';
	display: block;
	position: absolute;
	top: 3px;
	right: 0;
	width: 1px;
	height: 10px;
	background-color: var(--gray-color500);
}
.user_form .other_user_menu a {
	padding: 0 20px;
	font-size: 1.4rem;
	color: var(--gray-color400);
}
.user_form .other_user_menu strong {
	color: var(--blue-color100);
}
.user_form .guide_txt {
	margin-top: 25px;
}
.user_form .guide_txt p {
	font-size: 1.6rem;
	line-height: 1.5;
	text-align: center;
}
.user_form .non_member_chk {
	margin-top: 20px;
	padding-top: 50px;
	border-top: 1px solid var(--gray-color500);
}
.user_form .non_member_chk .agree_txt {
	width: 100%;
	height: 193px;
	padding: 10px;
	border: 1px solid var(--gray-color500);
	overflow-y: auto;
}
.user_form .non_member_chk .agree_txt p {
	font-size: 1.4rem;
	color: var(--gray-color450);
	line-height: 1.5;
}
.user_form_write .default_btn {
	display: block;
	width: 100%;
	height:48px;
	line-height: 46px;
	border:1px solid transparent;
	font-size: 1.4rem;
	font-weight: 700;
	text-align: center;
}
.user_form_write .primary_btn {
	color: var(--blue-color100);
	border-color: var(--blue-color100);
}
.user_form_write .primary_btn:hover {
	color: var(--white-basic-color);
	background-color: var(--blue-color100);
	border-color: var(--blue-color100);
}

.form_guide_txt {
	text-align: center;
}
.form_guide_txt p {
	font-size: 1.5rem;
	line-height: 1.3;
}

.form_btn_box {
	display: flex;
	align-items: center;
	margin-top: 50px;
}
.form_btn_box .btn_box {
	display: flex;
	align-items: center;
}
.form_btn_box .btn_center {
	margin: 0 auto;
}
.form_btn_box .default_btn {
	width: 200px;
	height: 54px;
	margin: 0 5px;
	line-height: 52px;
	font-size: 1.6rem;
	font-weight: 700;
	border: 1px solid transparent;
	text-align: center;
}
.form_btn_box .primary_btn {
	color: var(--white-basic-color);
	background-color: var(--blue-color100);
	border-color: var(--blue-color100);
}
.form_btn_box .primary_line_btn {
	color: var(--blue-color100);
	border-color: var(--blue-color100);
}
.form_btn_box .red_btn {
	color: var(--white-basic-color);
	background-color: var(--red-color025);
	border-color: var(--red-color025);
}
.form_btn_box .gray_btn {
	color: var(--white-basic-color);
	background-color: var(--gray-color450);
	border-color: var(--gray-color450);
}

/* input_box */
.input_box {
	width: 100%;
}
.input_box .label {
	display: block;
	margin-bottom: 6px;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.5;
}
.input_box .input_wrap input:not([type="checkbox"]) {
	width: 100%;
	height: 56px;
	padding: 0 15px;
	font-size: 1.4rem;
}

/* table_basic_form */
.table_basic_form .form_ttl_box {
	display: flex;
	align-items: center;
	margin-bottom: 10px;
}
.table_basic_form .form_ttl_box .form_ttl {
	font-size: 2.8rem;
	font-weight: 700;
}
.table_basic_form .form_ttl_box .ess_chk {
	margin-left: auto;
	font-size: 1.4rem;
}
.table_basic_form .form_ttl_box .ess_chk b {
	color: var(--red-color025);
}
.table_basic_form .form_ttl_box .btn_box {
	display: flex;
	gap: 20px;
	margin-left: auto;
	margin-bottom: 10px;
}
.table_basic_form .form_ttl_box .btn_box .default_btn {
	width:136px;
    height: 43px;
    line-height: 41px;
    font-size: 1.4rem;
    text-align: center;
    border: 1px solid transparent;
}
.table_basic_form .form_ttl_box .btn_box .black_line {
	color: var(--gray-color050);
	border-color: var(--gray-color050);
}
.table_basic_form .form_wrap_box {
	margin-bottom: 50px;
}
.table_basic_form .order_item_info {
	padding: 0 10px;
	text-align: left;
}
.table_basic_form .order_item_info .name {
	font-size: 1.8rem;
	line-height: 1.5;
	text-align: left;
}
.table_basic_form .order_item_info .option_wrap {
	display: flex;
	align-items: center;
	margin-top: 14px;
}
.table_basic_form .order_item_info .badge {
	width: 70px;
	margin-right: 9px;
	font-size: 1.4rem;
	color: var(--white-basic-color);
	line-height: 29px;
	border-radius: 14px;
	background-color: var(--blue-color100);
	text-align: center;
}
.table_basic_form .order_item_info .option_cont {
	font-size: 1.4rem;
}
.table_basic_form .order_item_info .modify_btn {
	width:136px;
	height: 30px;
	margin-top: 15px;
	line-height: 28px;
	font-size: 1.4rem;
	text-align: center;
	border: 1px solid var(--gray-color050);
}
.table_basic_form .cart_total_price {
	margin-top: 30px;
	padding: 30px;
	background-color: var(--gray-color600);
}
.table_basic_form .cart_total_price dl {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.table_basic_form .cart_total_price dt,
.table_basic_form .cart_total_price dd {
	font-size: 3.4rem;
	font-weight: 700;
}

/* table_write_form */
.table_write_form table {
	width: 100%;
	border-top: 2px solid var(--gray-color050);
	border-bottom: 2px solid var(--gray-color050);
}
.table_write_form table tr {
	border-bottom: 1px solid var(--gray-color500);
}
.table_write_form table th {
	padding: 10px;
	font-size: 1.8rem;
	font-weight: 500;
	text-align: left;
	vertical-align: middle;
}
.table_write_form table th .ess {
	display: inline-block;
	margin-left: 3px;
	font-size: 1.6rem;
	color: var(--red-color025);
}
.table_write_form table td {
	padding: 30px 5px;
	vertical-align: middle;
}
.table_write_form table .txt {
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.5;
}
.table_write_form table .highlight_txt {
	font-weight: 700;
	color: var(--blue-color100);
}
.table_write_form .input_multi {
	margin: -10px 0;
}
.table_write_form .input_multi .input_wrap {
	margin: 10px 0;
}
.table_write_form .input_wrap {
	display: flex;
	align-items: center;
}
.table_write_form .input_wrap input:not([type="checkbox"]),
.table_write_form .input_wrap select {
	max-width: 100%;
	height: 43px;
	margin: 0 5px;
	font-size: 1.6rem;
}
.table_write_form .input_wrap textarea {
	height: 148px;
	padding: 10px;
}
.table_write_form .input_wrap .wfull { width: 100%; }
.table_write_form .input_wrap .w380 { width: 380px; }
.table_write_form .input_wrap .w280 { width: 280px; }
.table_write_form .input_wrap .w180 { width: 180px; }
.table_write_form .input_wrap .w120 { width: 120px; }
.table_write_form .input_wrap .w80 { width: 80px; }

.table_write_form .input_guide {
	margin-top: 10px;
}
.table_write_form .input_guide p {
	font-size: 1.3rem;
	color: var(--red-color025);
}
.table_write_form .hyphen {
	margin: 0 5px;
	font-size: 1.6rem;
}
.table_write_form .unit {
	margin: 0 5px;
	font-size: 1.6rem;
}
.table_write_form .input_wrap .form_btn {
	width: 136px;
	height: 43px;
	margin: 0 5px;
	line-height: 41px;
	font-size: 1.4rem;
	font-weight: 700;
	border: 1px solid transparent;
	text-align: center;
}
.table_write_form .input_wrap .bk_line_btn {
	border-color: var(--gray-color050);
	color: var(--gray-color050);
}
.table_write_form .input_wrap .bk_line_btn:hover {
	background-color: var(--gray-color050);
	color: var(--white-basic-color);
}
.table_write_form .pay_radiobox {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}
.table_write_form .pay_radiobox:after {
	content:'';
	display: block;
	position: absolute;
	top: 5px;
	right: 0;
	width: 1px;
	height: 30px;
	background-color: var(--gray-color500);
}
.table_write_form td:last-child .pay_radiobox:after {
	display: none;
}
.table_write_form .pay_radiobox input + label {
	display: flex;
	align-items: center;
	justify-content: center;
}
.table_write_form .pay_radiobox .ico {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 47px;
	height: 40px;
	margin-left: 30px;
}
.table_write_form .pay_radiobox input[type="radio"] + label:before {
	top: 10px;
}
.table_write_form .pay_radiobox input[type="radio"]:checked + label:after {
	top: 15px;
}

/* table_list_form */
.table_list_form table {
	width: 100%;
	border-top: 2px solid var(--gray-color050);	
}
.table_list_form table thead {
	background-color: var(--gray-color600);
}
.table_list_form table tr {
	border-bottom: 1px solid var(--gray-color500);
}
.table_list_form table th {
	padding: 30px 10px;
	font-size: 1.8rem;
	line-height: 1.5;
	font-weight: 700;
	vertical-align: middle;
}
.table_list_form table td {
	padding: 30px 10px;
	font-size: 1.8rem;
	line-height: 1.5;
	text-align: center;
	vertical-align: middle;
}
.table_list_form table td .label {
	display: none;
}
.table_list_form table .board_link {
	text-align: left;
}
.table_list_form table .board_wrap_link {
	cursor: pointer;
}
.table_list_form table .link_name {
	display: inline-block;
	max-width: 100%;
	vertical-align: middle;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.table_list_form table .state {
	display: inline-block;
	width:auto;
	height:33px;
	padding: 0 10px;
	margin: 0 auto;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 31px;
	border-radius: 16.5px;
	text-align: center;
	border: 1px solid transparent;	
}
.table_list_form table .state.confirm {
	color: var(--blue-color100);
	border-color: var(--blue-color100);
}
.table_list_form table .state.cancel {
	color: var(--red-color025);
	border-color: var(--red-color025);
}
.table_list_form table .state.reserve {
	color: var(--blue-color300);
	border-color: var(--blue-color300);
}
.table_list_form table .state.finish {
	color: var(--purple-color100);
	border-color: var(--purple-color100);
}
.table_list_form table .state.waiting {
	color: var(--gray-color450);
	border-color: var(--gray-color450)
}
.table_list_form table .empty_txt {
	text-align: center;
}
.table_list_form .checkbox {
	font-size: 0;
}
.table_list_form .checkbox input[type="checkbox"] + label {
    width: 16px;
    height: 16px;
    padding-left: 0;
    font-size: 0;
    background-position: center;
}

/* view_form */
.view_form .view_top {
	margin-bottom: 35px;
}
.view_form.inquiry_form .view_top {
	margin-bottom: 0;
	padding-bottom: 35px;
	border-bottom: 2px solid #222222;
}
.view_form .view_top .state {
	display: block;
    width: 80px;
    height: 33px;
    margin: 0 auto 10px;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 31px;
    border-radius: 16.5px;
    text-align: center;
    border: 1px solid transparent;
}
.view_form .view_top .state.confirm {
    color: var(--blue-color100);
    border-color: var(--blue-color100);
}
.view_form .view_top .state.waiting {
	color: var(--gray-color450);
    border-color: var(--gray-color450);
}
.view_form .view_top .view_name {
	font-size: 2.8rem;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
}
.view_form .view_top .view_info {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 15px;
}
.view_form .view_top .view_info span {
	position: relative;
	font-size: 1.6rem;
	color: var(--gray-color400);
}
.view_form .view_top .view_info span:not(:last-child) {
	padding-right: 12px;
	margin-right: 12px;
}
.view_form .view_top .view_info span:not(:last-child):after {
	content:'';
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 1px;
	height: 10px;
	background-color: var(--gray-color500);
}
.view_form .view_cont {
	min-height: 300px;
	padding: 30px;
	border-top: 2px solid var(--gray-color050);
	border-bottom: 1px solid var(--gray-color050);
}
.view_form .view_cont + .view_cont {
	margin-top: 50px;
}
.view_form .view_cont .editor_wrap {
	line-height: 1.5;
}
.view_form .inq_cont_ttl {
	display: flex;
	align-items: center;
	margin: 50px 0 10px;
}
.view_form .inq_cont_ttl i {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	font-size: 1.6rem;
	font-weight: 700;
	color: var(--white-basic-color);
	border-radius: 50%;
}
.view_form .inq_cont_ttl i.question {
	background-color: var(--blue-color100);
}
.view_form .inq_cont_ttl i.answer {
	background-color: var(--blue-color300);
}
.view_form .inq_cont_ttl p {
	margin-left: 20px;
	font-size: 2.8rem;
	font-weight: 700;
}
.view_form .view_file {
	display: flex;
	align-items: flex-start;
	margin-top: 40px;
	padding: 18px 0;
	border-top: 1px solid var(--gray-color500);
	border-bottom: 1px solid var(--gray-color500);
}
.view_form .view_file .badge {
	flex: 0 0 auto;
	width:160px;
	margin-right: 40px;
	padding-right: 20px;
	font-size: 1.6rem;
	line-height: 1.5;
	background: url('../images/common/ico_clip.png') no-repeat right center / 13px;
	text-align: right;
}
.view_form .view_file .file_list a {
	font-size: 1.6rem;
	line-height: 1.5;
	color: var(--gray-color400);
}
.view_form .move_wrap {
	margin-top: 30px;
}
.view_form .move_box {
	display: flex;
	align-items: center;
	margin: 10px 0;
	border-top: 1px solid var(--gray-color500);
	border-bottom: 1px solid var(--gray-color500);
}
.view_form .move_box .move_ttl {
	display: flex;
	align-items: center;
	justify-content: center;
	flex:0 0 auto;
	width:158px;
	height: 60px;
	font-size: 1.6rem;
	background-color: var(--blue-color500);
}
.view_form .move_box .move_txt {
	position: relative;
	padding-right: 22px;
}
.view_form .move_box .move_txt:after {
	content:'';
	display:block;
	position:absolute;
	top:4px;
	right:0;
	width:12px;
	height:7px;
	background:url('../images/common/ico_select_arrow.png') no-repeat center;
}
.view_form .move_box .move_ttl.next .move_txt:after {
	transform: rotate(180deg);
}
.view_form .move_box .move_contents,
.view_form .move_box .no_contents {
	min-width:0;
	padding: 0 35px;
	font-size: 1.6rem;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.view_form .move_box .no_contents {
	color: var(--gray-color400);
}

/* faq */
.faq_list ul {
	border-top: 2px solid var(--gray-color500);
}
.faq_list ul li {
	border-bottom: 1px solid var(--gray-color500);
}
.faq_list ul li.active {
	background-color: var(--blue-color600);
}
.faq_list .question_box {
	display: flex;
	align-items: flex-start;
	position: relative;
	padding: 20px 40px;
	cursor: pointer;
}
.faq_list .question_box:after {
	content:'';
	display:block;
	position: absolute;
	top: 30px;
	right: 40px;
	width:20px;
	height:12px;
	background: url('../images/common/ico_arrow_faq.png') no-repeat center;
}
.faq_list .active .question_box:after {
	transform: rotate(-180deg);
}
.faq_list .question_box i {
	flex: 0 0 auto;
	width:28px;
	margin-right: 25px;
	font-size: 1.7rem;
	font-weight: 700;
	color: var(--white-basic-color);
	line-height: 28px;
	border-radius: 50%;
	background-color: var(--blue-color100);
	text-align: center;
}
.faq_list .question_box strong {
	font-size: 1.8rem;
	line-height: 1.5;
}
.faq_list .answer_box {
	display: none;
	align-items: flex-start;
	padding: 15px 0 30px;
	margin: 0 40px;
	border-top: 1px dashed var(--gray-color500);
}
.faq_list .active .answer_box {
	display: flex;
}
.faq_list .answer_box i {
	flex: 0 0 auto;
	width:28px;
	margin-right: 25px;
	font-size: 1.7rem;
	font-weight: 700;
	color: var(--white-basic-color);
	line-height: 28px;
	border-radius: 50%;
	background-color: var(--blue-color300);
	text-align: center;
}
.faq_list .answer_box p {
	font-size: 1.8rem;
	line-height: 1.5;
}
.faq_guide {
	display: flex;
	align-items: center;
	padding: 40px 60px;
	margin-top: 60px;
	background: url('../images/sub/faq_bg.png') no-repeat right center;
	border-radius: 30px;
}
.faq_guide .txt_box {
	display: flex;
	align-items: center;
	margin-left: 7.8125%;
}
.faq_guide .txt_box p {
	font-size: 2rem;
	line-height: 1.5;
}
.faq_guide .txt_box .inquiry_btn {
	width: 200px;
    height: 54px;
	margin-left: 65px;
    line-height: 52px;
    font-size: 1.6rem;
    font-weight: 700;
	color: var(--white-basic-color);
    background-color: var(--blue-color100);
    border: 1px solid var(--blue-color100);
    text-align: center;
}

/* company */
.introduce_box {
	margin-bottom: 100px;
}
.introduce_box ul {
	display: flex;
	margin: 0 -11px 40px;
}
.introduce_box li {
	position: relative;
	width: calc(33.33% - 22px);
	height: 330px;
	margin: 0 11px;
	overflow: hidden;
}
.introduce_box li:first-child {
	border-radius: 0 0 0 100px;
}
.introduce_box li:last-child {
	border-radius: 0 100px 0 0;
}
.introduce_box .img_wrap {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.introduce_box .img_wrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.introduce_box .txt_box {
	display: flex;
	align-items: center;
	flex-direction: column;
	position: absolute;
	width: 100%;
	top: 70%;
	left: 0;
	transition: .5s;
	z-index: 10;
}
.introduce_box .txt_box .number {
	font-size: 2.4rem;
	font-weight: 700;
	color: var(--white-basic-color);
}
.introduce_box .txt_box .name {
	margin: 20px 0;
	font-size: 2rem;
	font-weight: 700;
	color: var(--white-basic-color);
}
.introduce_box .txt_box .cont {
	font-size: 1.6rem;
	color: var(--white-basic-color);
	line-height: 1.5;
	text-align: center;
	opacity: 0;
	transition: .5s;
}
.introduce_list_wrap {
	margin: 60px 0;
}
.introduce_list + .introduce_list {
	margin-top: 80px;
}
.introduce_list .sub_ttl_box h3 {
	letter-spacing: -0.02em;
}
.introduce_list .list_wrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
	gap: 22px;
}
.introduce_list .list_box {
	display: flex;
	align-items: center;
	padding:40px 20px;
	gap: 28px;
	border: 1px solid var(--gray-color500);
	border-radius: 15px;
}
.introduce_list .list_box .list_img {
	flex: 0 0 auto;
}
.introduce_list .list_box .list_name {
	display: block;
	margin-bottom: 12px;
	font-size: 2.4rem;
	font-weight: 700;
	color: #6f8a39;
}
.introduce_list .list_box .list_cont {
	font-size: 2rem;
	line-height: 1.5;
	word-break: keep-all;
}
.introduce_box .result_box {
	position: relative;
	padding-top: 78px;
	text-align: center;
}
.introduce_box .result_box:before {
	content:'';
	display: block;
	position: absolute;
	top: 0;
	left: 50%;
	width: 45px;
	height: 38px;
	background: url('../images/sub/ico_triple_arrow.png') no-repeat center / cover;
	animation: slide-bottom 1s linear infinite alternate-reverse both;
}
.introduce_box .result_box strong {
	font-size: 2.8rem;
	line-height: 1.5;
}
.introduce_box .result_box strong span {
	font-size: 2.8rem;
	color: var(--blue-color100);
}
@keyframes slide-bottom {
	0% {
		transform: translate(-50%,0);
	}
	100% {
		transform: translate(-50%,10px);
	}
}

.history_box {
	padding: 90px 0 100px;
	background: var(--gray-color650) url('../images/sub/history_bg.png') no-repeat center;
}
.history_box .history_list {
	position: relative;
}
.history_box .list_wrap {
	display: flex;
	align-items: flex-start;
	position: relative;
	padding-bottom: 50px;
}
.history_box .list_wrap:not(:last-child):before {
	content:'';
	display: block;
	position: absolute;
	top: 5px;
	left: 50%;
	width: 1px;
	height: 100%;
	transform: translateX(-50%);
	background-color: var(--gray-color500);
}
.history_box .list_wrap:after {
	content:'';
	display: block;
	position: absolute;
	top: 5px;
	left: 50%;
	width: 13px;
	height: 13px;
	transform: translateX(-50%);
	background-color: var(--blue-color100);
	border-radius: 50%;
}
.history_box .year {
	width: 50%;
	padding: 0 40px;
	font-size: 3rem;
	font-weight: 700;
}
.history_box .list_box {
	width: 50%;
	padding: 0 20px;
}
.history_box .list_box ol > li {
	display: flex;
	align-items: flex-start;
}

.history_box .list_box .month {
	flex: 0 0 auto;
	width: 60px;
	font-size: 1.8rem;
	font-weight: 700;
	color: var(--blue-color100);
	line-height: 1.5;
	text-align: center;
}
.history_box .list_box ul li {
	margin-bottom: 10px;
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.5;
}

.org_box {
	margin-bottom: 150px;
}
.org_box .txt_box {
	margin-bottom: 25px;
	text-align: center;
}
.org_box .txt_box p {
	font-size: 2.8rem;
	font-weight: 700;
	line-height: 1.5;
}
.org_box .txt_box p strong {
	color: var(--blue-color100);
}
.org_box ul {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
}
.org_box ul li {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 20%;
	height: 136px;
	padding: 10px;
	transition: .4s;
}
.org_box ul li:hover {
	transform: translateY(-5px);
}
.org_box ul li img {
	max-width:200px;
}

/* item_list */
.item_menu_tab {
	display: flex;
	margin: 0 -20px 45px;
}
.item_menu_tab .tab_btn {
	width: 100%;
	padding: 12px 0;
	margin: 0 20px;
	line-height: 1.5;
	font-size: 1.6rem;
	font-weight: 500;
	color: var(--gray-color450);
	border: 1px solid var(--gray-color500);
	text-align: center;
}
.item_menu_tab .tab_btn.active {
	color: var(--white-basic-color);
	border-color: var(--blue-color300);
	background-color: var(--blue-color300);
}
.item_form .total_number {
	margin-bottom: 28px;
}
.item_form .total_number p {
	font-size: 2rem;
	font-weight: 500;
}
.item_form .total_number span {
	font-weight: 700;
	color: var(--blue-color100);
}
.item_list ul {
	display: flex;
	flex-wrap: wrap;
	margin: -12.5px;
}
.item_list ul li {
	position: relative;
	width: calc(25% - 25px);
	margin: 12.5px;
	border-radius: 20px;
	background-color: var(--white-basic-color);
	border: 1px solid var(--gray-color500);
	transition: .4s;
	overflow: hidden;
}
.item_list .swiper-slide {
	position: relative;
	border-radius: 20px;
	background-color: var(--white-basic-color);
	border: 1px solid var(--gray-color500);
	overflow: hidden;
}
.item_list ul li:hover {
	box-shadow: 0px 0px 15.52px 0.48px rgba(30, 30, 30, 0.06);
}
.item_list .img_box {
	width: 100%;
	height: 190px;
}
.item_list .img_box img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.item_list .txt_box {
	padding: 17px 25px;
}
.item_list .item_name {
	height: 48px;
	margin-bottom: 12px;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.5;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	text-overflow: ellipsis;
	overflow: hidden;
}
.item_list .price_box {
	display: flex;
	justify-content: flex-end;
	padding-top: 15px;
	border-top: 1px solid var(--gray-color500);
}
.item_list .price_box .before_price {
	margin-right: 10px;
	font-size: 1.4rem;
	color: var(--red-color025);
	text-decoration: line-through;
}
.item_list .price_box .price {
	font-size: 1.6rem;
	font-weight: 500;
	color: var(--gray-color400);
}
.item_list .zzim_btn {
	position:absolute;
	top:9px;
	left: 9px;
	width:17px;
	height:16px;
	font-size: 0;
	background: url('../images/common/btn_zzim_off.png') no-repeat center;
}
.item_list .zzim_btn.on {
	background: url('../images/common/btn_zzim_on.png') no-repeat center;
}

/* item_view */
.item_ttl_box {
	position: relative;
	padding-bottom: 25px;
	border-bottom: 1px solid var(--gray-color500);
}
.item_ttl_box .item_name {
	font-size: 2.8rem;
	font-weight: 700;
	line-height: 1.5;
}
.item_ttl_box .item_name_cont {
	margin-top: 10px;
	font-size: 2rem;
	font-weight: 500;
	color: var(--gray-color200);
	line-height: 1.5;
}
.item_ttl_box .item_location {
	display: block;
	padding-left: 17px;
	margin-top: 15px;
	font-size: 1.6rem;
	font-weight: 700;
	color: var(--blue-color100);
	background: url('../images/common/ico_location.png') no-repeat left center;	
}
.item_ttl_box .share_box {
	position: absolute;
	bottom: 15px;
	right: 0;
}
.item_ttl_box .share_btn {
	width: 34px;
	height: 34px;
	font-size: 0;
	border: 1px solid var(--gray-color500);
	background: url('../images/common/ico_clip.png') no-repeat center;
}
.item_ttl_box .share_btn:hover {
	border-color: var(--gray-color400);
	background: var(--gray-color400) url('../images/common/ico_clip_w.png') no-repeat center;
}
.share_list {
	display: none;
	position: absolute;
	top: calc(100% + 5px);
	right: 0;
	width: 250px;
	padding: 15px;
	border: 1px solid var(--gray-color500);
	white-space: nowrap;
	background-color: var(--white-basic-color);
	z-index: 99;
}
.share_list .share_txt {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-bottom: 10px;
	border-bottom: 1px solid var(--gray-color500);
}
.share_list .share_txt p {
	font-size: 1.6rem;
	font-weight: 700;
}
.share_list ul {
	display: flex;
	flex-wrap: wrap;
}
.share_list li {
	width: 33.33%;
	margin: 15px 0;
}
.share_list li a {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	padding: 0 10px;
}
.share_list li p {
	margin-top: 10px;
	font-size: 1.4rem;
}

.item_view {
	display: flex;
	align-items: flex-start;
	padding-top: 25px;
}
.item_view .item_cont_box {
	width: 65.625%;
}
.item_view .item_img_box {
	margin-bottom: 50px;
}
.item_view .item_img_box .swiper-wrapper {
	align-items: center;
}
.item_view .item_img_box .swiper-slide {
	border-radius: 20px;
	overflow: hidden;
}
.item_view .item_box_ttl {
	margin-bottom: 25px;
}
.item_view .item_box_ttl .box_ttl {
	font-size: 2.8rem;
	font-weight: 700;
}
.item_view .item_relate_list {
	margin-bottom: 50px;
}
.item_view .item_list ul {
	margin: 0 -8px;
}
.item_view .item_list ul li {
	width: calc(33.33% - 18px);
	margin: 0 9px;
}
.item_view .item_list .img_box {
	height: 170px;
}
.item_view .item_list .txt_box {
	padding: 15px;
}
.item_view .item_list .price_box .price {
	font-size: 1.4rem;
}
.item_view .item_menu_tab {
	margin: 0 -15px 20px;
}
.item_view .item_menu_tab .tab_btn {
	margin: 0 15px;
}
.item_view .cont_box {
	padding: 20px 0;
	border-bottom: 1px solid var(--gray-color500);
}
.item_view .cont_ttl {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	margin-bottom: 20px;
}
.item_view .cont_ttl .cont_name {
	display: flex;
	align-items: center;
}
.item_view .cont_ttl .cont_ico {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	margin-right: 10px;
}
.item_view .cont_ttl .cont_name p {
	font-size: 2.2rem;
	font-weight: 500;
}
.item_view .cont_ttl .schedule_link {
	padding: 9px 15px;
	font-size: 1.4rem;
	color: var(--white-basic-color);
	background-color: var(--blue-color100);
	border-radius: 15px;
}
.item_view .editor_wrap {
	margin: initial;
	padding: initial;
	color: initial;
	line-height: initial;
	word-break: break-all;
}

.item_view .editor_wrap ul,
.item_view .editor_wrap ol {
    margin: 0 0 1em 1.5em;
    padding-left: 1.5em;
}
.item_view .editor_wrap ul {
    list-style-type: disc !important;
    list-style-position: outside !important;
}

.item_view .editor_wrap ul ul {
    list-style-type: circle !important;
}
.item_view .editor_wrap ul ul ul {
    list-style-type: square !important;
}
.item_view .editor_wrap ol {
    list-style-type: decimal !important;
    list-style-position: outside !important;
}
.item_view .editor_wrap ol ul {
    list-style-type: disc !important;
}
.item_view .editor_wrap li {
    margin: 0.25em 0;
    padding: 0;
}

.item_img_box .swiper-slide img {
	display: block;
	width: 100%;
	max-height: 500px;
	object-fit: cover;
}
.item_img_box .swiper-button-prev,
.item_img_box .swiper-button-next {
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	width:50px;
	height:50px;
	background-color: var(--white-basic-color);
	border-radius: 50%;
}
.item_img_box .swiper-button-prev {
	left: 32px;
}
.item_img_box .swiper-button-next {
	right: 32px;
	transform: rotate(180deg);
}
.item_img_box .swiper-button-prev:after,
.item_img_box .swiper-button-next:after {
	content:'';
	display: block;
	width: 12px;
	height: 22px;
	background: url('../images/common/btn_slide_arrow.png') no-repeat center;
}
.item_img_box .swiper-button-disabled {
	opacity: 1;
}
.item_img_box .swiper-button-disabled:after {
	opacity: .48;
}
.item_img_box .swiper-pagination {
	display: flex;
	align-items: center;
	justify-content: center;
	bottom: 30px;
}
.item_img_box .swiper-pagination-bullet {
	width: 12px;
	height: 12px;
	margin: 0 5px;
	background-color: var(--gray-color500);
	opacity: 1;
}
.item_img_box .swiper-pagination-bullet-active {
	background-color: var(--gray-color050);
}

.item_option_box {
	position: sticky;
	top: 0;
	width: calc(34.375% - 25px);
	padding: 10px 20px 20px;
	margin-left: 25px;
	border: 1px solid var(--gray-color500);
	border-radius: 20px;
}
.item_option_box .option_wrap {
	padding: 20px 0;
	border-bottom: 1px dashed var(--gray-color500);
}
.item_option_box .option_wrap dl {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.item_option_box .option_wrap dt {
	font-size: 1.8rem;
	font-weight: 700;
}
.item_option_box .option_wrap dd {
	font-size: 1.6rem;
	font-weight: 700;
}
.item_option_box .option_ttl {
	margin-bottom: 10px;
	font-size: 1.8rem;
	font-weight: 700;
}
.item_option_box .select_box select {
	width: 100%;
	height: 43px;
	margin: 3.5px 0;
}
.item_option_box .select_result {
	position: relative;
	margin-top: 10px;
	padding: 15px 10px 13px;
	background-color: var(--blue-color600);
}
.item_option_box .select_result .select_name {
	font-size: 1.6rem;
}
.item_option_box .select_result .delete_btn {
	position: absolute;
	top:10px;
	right:10px;
	width: 18px;
	height: 18px;
	font-size: 0;
	background: var(--white-basic-color) url('../images/common/btn_close.png') no-repeat center / 10px;
}
.item_option_box .select_result .select_count {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 20px;
}
.item_option_box .select_result .select_price {
	font-size: 1.6rem;
	font-weight: 700;
}
.item_option_box .select_result .count_box {
	display: flex;
	align-items: center;
}
.item_option_box .select_result .count_box .count_btn {
	position: relative;
	width: 20px;
	height: 20px;
	font-size: 0;
	border: 1px solid var(--gray-color500);
	background-color: var(--white-basic-color);
	background-repeat: no-repeat;
	background-position: center;
	border-radius: 50%;
}
.item_option_box .select_result .count_box .minus_btn {
	background-image: url('../images/sub/ico_minus.png');
}
.item_option_box .select_result .count_box .plus_btn {
	background-image: url('../images/sub/ico_plus.png');
}
.item_option_box .select_result .count_box input {
	width: 20px;
	padding: 0;
	margin: 0 5px;
	border: none;
	background-color: transparent;
	text-align: center;
}
.item_option_box .item_result {
	margin: 15px 0 20px;
}
.item_option_box .item_result dl {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.item_option_box .item_result dt,
.item_option_box .item_result dd {
	font-size: 2rem;
	font-weight: 700;
}
.item_option_box .item_btn_box {
	display: flex;
	margin: 0 -3px;
}
.item_option_box .item_btn_box .pay_btn {
	width: 100%;
	height: 44px;
	margin-right: 4px;
	line-height: 42px;
	font-size: 1.6rem;
	font-weight: 700;
	color: var(--white-basic-color);
	text-align: center;
	background-color: var(--blue-color100);
}
.item_option_box .item_btn_box .soldout_btn {
	width: 100%;
	height: 44px;
	margin-right: 4px;
	line-height: 42px;
	font-size: 1.6rem;
	font-weight: 700;
	color: var(--white-basic-color);
	text-align: center;
	background-color: var(--gray-color400);
}
.item_option_box .item_btn_box .option_btn {
	flex: 0 0 auto;
	width: 43px;
	height: 44px;
	margin: 0 3px;
	font-size: 0;
	border: 1px solid var(--gray-color500);
	background-repeat: no-repeat;
	background-position: center;
}
.item_option_box .item_btn_box .cart_btn {
	background-image: url('../images/common/ico_cart_gray.png');
}
.item_option_box .item_btn_box .cart_btn:hover,
.item_option_box .item_btn_box .cart_btn.active {
	border-color: var(--blue-color300);
	background-image: url('../images/common/ico_cart_active.png');
}
.item_option_box .item_btn_box .zzim_btn {
	background-image: url('../images/common/ico_zzim_gray.png');
}
.item_option_box .item_btn_box .zzim_btn:hover,
.item_option_box .item_btn_box .zzim_btn.active {
	border-color: var(--red-color000);
	background-image: url('../images/common/ico_zzim_active.png');
}
.item_option_box .guide_txt {
	position: absolute;
	top: calc(100% + 10px);
	right: 0;
}
.item_option_box .guide_txt p {
	font-size: 1.4rem;
	font-weight: 700;
}

.item_qna_box {
	margin-top: 40px;
}
.item_qna_box .qna_btn_box {
	display: flex;
	align-items: center;
	padding-bottom: 15px;
	border-bottom:1px solid var(--gray-color500)
}
.item_qna_box .qna_btn_box .qna_btn {
	position: relative;
	margin-left: auto;
	padding: 0 16px 0 18px;
	font-size: 1.6rem;
	font-weight: 700;
	color: var(--blue-color100);
	background: url('../images/common/ico_pen.png') no-repeat left center;
}
.item_qna_box .qna_btn_box .qna_btn:after {
	content:'';
	display: block;
	position: absolute;
	top: 3px;
	right: 0;
	width: 7px;
	height: 13px;
	background: url('../images/common/ico_arrow_blue.png') no-repeat center;
}
.item_qna_box .qna_list li {
	padding: 25px 0;
	border-bottom: 1px solid var(--gray-color500);
}
.item_qna_box .qna_list .top_cont {
	display: flex;
	align-items: center;
}
.item_qna_box .qna_list .qna_info span {
	height: 29px;
	line-height: 27px;
}
.item_qna_box .qna_list .qna_info {
	display: flex;
	align-items: center;
}
.item_qna_box .qna_list .qna_info span:not(:last-child) {
	position: relative;
	margin-right: 30px;
}
.item_qna_box .qna_list .qna_info span:not(:last-child):after {
	content:'';
	display: block;
	position: absolute;
	top: 8px;
	right: -15px;
	width: 1px;
	height: 10px;
	background-color: var(--gray-color500);
}
.item_qna_box .qna_list .state {
	width: auto;
	padding: 0 10px;
	line-height: 27px;
	font-size: 1.4rem;
	font-weight: 700;
	border-radius: 14px;
	border: 1px solid transparent;
	text-align: center;
}
.item_qna_box .qna_list .state.finish {
	color: var(--blue-color100);
	border-color: var(--blue-color100);
}
.item_qna_box .qna_list .state.waiting {
	color: var(--gray-color450);
	border-color: var(--gray-color450);
}
.item_qna_box .qna_list .name,
.item_qna_box .qna_list .date {
	font-size: 1.6rem;
	font-weight: 700;
}
.item_qna_box .qna_list .secret {
	font-size: 0;
}
.item_qna_box .qna_list .secret img {
	vertical-align: middle;
}
.item_qna_box .qna_list .user_btn_box {
	margin-left: auto;
}
.item_qna_box .qna_list .user_btn_box .default_btn {
	width: 78px;
	height: 29px;
	line-height: 27px;
	margin: 0 3.5px;
	font-size: 1.4rem;
	border-radius: 5px;
	border: 1px solid transparent;
	text-align: center;
}
.item_qna_box .qna_list .user_btn_box .primary_btn {
	color: var(--white-basic-color);
	border-color: var(--blue-color000);	
	background-color: var(--blue-color000);	
}
.item_qna_box .qna_list .user_btn_box .primary_line_btn {
	color: var(--blue-color000);	
	border-color: var(--blue-color000);	
}
.item_qna_box .qna_list .qna_cont {
	padding-top: 15px;
}
.item_qna_box .qna_list .qna_cont p {
	font-size: 1.6rem;
	line-height: 1.5;
}
.item_qna_box .qna_list .answer_view_btn {
	padding: 25px 0 20px;
}
.item_qna_box .qna_list .answer_view_btn .view_btn {
	padding-left: 20px;
	font-size: 1.6rem;
	background: url('../images/common/ico_comment.png') no-repeat left center;
}
.item_qna_box .qna_list .answer_box {
	position: relative;
	padding: 25px 40px 30px;
	background: var(--blue-color600);
}
.item_qna_box .qna_list .answer_box:before {
	content:'';
	display: block;
	position: absolute;
	top: 25px;
	left: 15px;
	width: 13px;
	height: 15px;
	background: url('../images/common/ico_answer.png') no-repeat center;
}

.popup .popup_wrap .item_option_box {
	position: relative;
	width: 100%;
	padding: 0;
	margin-left: 0;
	border: none;
}

.qna_popup .popup_wrap {
	max-width: 360px;
}

.cart_popup .popup_wrap {
	max-width: 417px;
}

/* program */
.sub.program {
	margin-top: 30px;
}
.program .layer_top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding:37px 0 20px;
    border-bottom: 1px solid var(--gray-color050);
}
.program .layer_top .layer_ttl {
    font-size: 2.4rem;
    font-weight: 700;
}

.program_info_wrap .program_info {
	margin-bottom: 80px;
}
.program_info .info_summary {
	display: flex;
    align-items: center;
    justify-content: space-between;
    border-radius: 10px;
    margin-top: 40px;
}
.program_info .info_summary .program_name {
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.3;
}
.program_info .info_summary .program_option {
	font-size: 2.4rem;
	line-height: 1.3;
}
.program_info .info_summary .right_box {
	display: flex;
	align-items: center;
	margin-left: auto;
}
.program_info .info_summary .country_sort {
	display: flex;
}
.program_info .info_summary .country_sort span {
	width:49px;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 35px;
	border-radius: 17.5px;
	text-align: center;
}
.program_info .info_summary .country_sort span + span {
	margin-left: 10px;
}
.program_info .info_summary .share_box {
	display: flex;
	align-items: center;
	position: relative;
	margin-left: 20px;
}
.program_info .info_summary .share_box .default_btn {
	width:42px;
	height:42px;
	font-size: 0;
	border:1px solid var(--gray-color500);
	background-color:transparent;
	background-position: center;
	background-repeat: no-repeat;
	border-radius: 50%;
	transition: .4s;
}
.program_info .info_summary .share_box .default_btn + .default_btn {
	margin-left: 10px;
}
.program_info .info_summary .share_box .default_btn:hover {
	border-color: var(--black-basic-color);
	background-color: var(--black-basic-color);
}
.program_info .info_summary .share_box .print_btn {
	background-image: url('../images/common/ico_printer_bk.png');
}
.program_info .info_summary .share_box .share_btn {
	background-image: url('../images/common/ico_share_bk.png');
}
.program_info .info_summary .share_box .print_btn:hover {
	background-image: url('../images/common/ico_printer_wh.png');
}
.program_info .info_summary .share_box .share_btn:hover {
	background-image: url('../images/common/ico_share_wh.png');
}
.program_info .info_summary .share_box .mail_btn {
	background-image: url('../images/common/ico_mail_bk.png');
}
.program_info .info_summary .share_box .mail_btn:hover {
	background-image: url('../images/common/ico_mail_wh.png');
}
.program_info .program_guide {
	display:flex;
	justify-content: center;
	margin-top: 30px;
	padding:20px 40px;
	border-radius: 10px;
	background-color:var(--gray-color650);
}
.program_info .program_guide .txt_box * {
	line-height: 1.5;
}
.program_info .program_guide .txt_box strong {
	display:block;
	margin-bottom: 15px;
	font-size: 1.6rem;
	font-weight: 700;
}
.program_info .program_guide .txt_box p {
	font-size: 1.6rem;
}
.program_info .program_guide .price_box span {
	display:block;
	margin-bottom: 10px;
	font-size: 1.4rem;
	text-align: right;
}
.program_info .program_guide .price_box .price {
	font-size: 2.5rem;
    font-weight: 500;
    color: var(--black-basic-color);
	line-height: 1.3;
}

/* schedule_info */
.schedule_info_wrap {
	margin-top: 30px;
}
.schedule_info_wrap .schedule_info {
	display:flex;
	border-bottom: 1px solid var(--gray-color500);
}
.schedule_info_wrap .schedule_info:first-child {
	border-top: 1px solid var(--gray-color050);
}
.schedule_info .schedule_ttl {
	background-color: var(--gray-color600);
    text-align: center;
	vertical-align: middle;
}
.schedule_info .schedule_ttl .day {
	display: block;
    margin-bottom: 20px;
    font-size: 1.6rem;
    font-weight: 700;
}
.schedule_info .schedule_ttl .date {
	display: block;
    font-size: 1.6rem;
}
.schedule_info table {
	width:100%;
}
.schedule_info_wrap .schedule_info table thead {
	display:none;
}
.schedule_info_wrap .schedule_info:first-child table thead {
	display:table-header-group;
	background-color: var(--gray-color600);
} 
.schedule_info table thead tr {
	border-bottom: 1px solid var(--gray-color500);
}
.schedule_info table th {
	padding:20px;
	font-size: 1.6rem;
	font-weight: 700;
	border-right: 1px solid var(--gray-color500);
}
.schedule_info table td {
	padding:7px 10px;
	font-size: 1.6rem;
	line-height: 1.5;
	vertical-align: top;
	text-align: center;
	border-right: 1px solid var(--gray-color500);
}
.schedule_info table th:last-child,
.schedule_info table td:last-child {
	border-right: none;
}
.schedule_info table td.schedule_detail {
	text-align: left;
}
.schedule_info table .option_date {
	background-color:var(--white-sub-color100);
	text-align: center;
}
.schedule_info table .option_date .day {
	display:block;
	margin-bottom: 20px;
	font-size: 2.4rem;
	font-weight: 700;
}
.schedule_info table .option_date .date {
	display:block;
	font-size: 1.6rem;
	color:var(--text-variant-color200);
}
.schedule_info .schedule_note_box {
	padding:10px 0 15px 220px;
	border-top: 1px solid var(--gray-color500);
}
.schedule_info .schedule_note_box strong {
	font-size: 1.5rem;
    font-weight: 500;
    color: var(--text-variant-color200);
}

/* etc */
.privacy_txt h4 {
    color: #3F4449;
    font-size: 16px;
    font-weight: 400;
    margin-bottom: 5px;
}
.privacy_txt .basic_txt {
	margin-bottom: 30px;
}
.privacy_txt .basic_txt h2 {
	margin-bottom: 15px;
	font-size: 20px;
	font-weight: 700;
}
.privacy_txt .basic_txt h3 {
	margin-bottom: 15px;
	font-size: 20px;
	font-weight: 700;
}
.privacy_txt .basic_txt h4 {
	margin-bottom: 15px;
	font-size: 20px;
	font-weight: 700;
}
.privacy_txt p {
	margin-bottom: 10px;
}
.privacy_txt li,
.privacy_txt p {
    font-size: 15px;
    line-height: 1.5;
    word-break: keep-all;
    font-weight: 300;
}
.privacy_txt li {
	margin-bottom: 10px;
}
.privacy_txt .table_wrap {
    margin-top:30px;
}
.privacy_txt .table_wrap table {
	width: 100%;
    border-top:1px solid #000;
	border: 1px solid #ddd;
}
.privacy_txt .table_wrap tr {
    border-bottom:1px solid #ddd;
}
.privacy_txt .table_wrap th {
    padding:10px;
    font-size: 15px;
    line-height: 1.4;
	border-right: 1px solid #ddd;
	vertical-align: middle;
}
.privacy_txt .table_wrap td {
    padding:10px;
    font-size: 15px;
    line-height: 1.4;
    text-align: center;
	border-right: 1px solid #ddd;
	vertical-align: middle;
	word-break: break-all;
}

/* hover contents */
@media screen and (min-width:850px) {
	
	.introduce_box li:hover .txt_box {
		top: 50%;
		transform: translateY(-50%);
	}
	.introduce_box li:hover .txt_box .cont {
		opacity: 1;
	}

	.history_box .list_wrap:nth-child(even) {
		flex-direction: row-reverse;
	}
	.history_box .list_wrap:nth-child(odd) .year {
		text-align: right;
	}
	.history_box .list_wrap:nth-child(even) ol > li {
		flex-direction: row-reverse;
	}
	.history_box .list_wrap:nth-child(even) ul li {
		text-align: right;
	}

}

/* responsive */

@media screen and (max-width:1024px) {

	/* common */
	.sub_visual .visual_inner {
		height: 350px;
		border-radius: 15px;
		background-size: cover;
	}
	.sub_visual .visual_ttl {
		height: calc(100% - 50px);
	}
	.sub_visual .visual_ttl h2 {
		font-size: 3.5rem;
	}
	.sub_visual .location {
		flex-wrap: wrap;
		padding: 0 10px;
		margin-top: 15px;
	}
	.sub_visual .visual_tab {
		padding: 0 27px;
	}
	.sub_visual .visual_tab .tab_ttl {
		position: relative;
		width: 100%;
		height: 50px;
		padding: 0 20px;
		font-size: 1.8rem;
		font-weight: 700;
		color: var(--gray-color400);
		border-radius: 15px 15px 0 0;
		background-color: var(--white-basic-color);
		border: 1px solid var(--white-basic-color);
		border-bottom: none;
		text-align: left;
	}
	.sub_visual .visual_tab .tab_ttl.open {
		border-color: var(--gray-color500);
	}
	.sub_visual .visual_tab .tab_ttl:after {
		content:'';
		display: block;
		position: absolute;
		top: 20px;
		right: 10px;
		width: 12px;
		height: 7px;
		background: url('/assets/images/common/ico_tab_arrow.png') no-repeat center / contain;
	}
	.sub_visual .visual_tab .tab_ttl.open:after {
		transform: rotate(180deg);
	}
	.sub_visual .visual_tab ul {
		display: none;
		position: absolute;
		top: 100%;
		width: calc(100% - 54px);
		flex-direction: column;
		border: 1px solid var(--gray-color500);
		border-radius: 0 0 15px 15px;
		z-index: 99;
	}
	.sub_visual .visual_tab ul.open {
		display: flex;
	}
	.sub_visual .visual_tab li {
		height: 50px;
		background-color: var(--white-basic-color);
		border-bottom: 1px solid var(--gray-color500);
	}
	.sub_visual .visual_tab li:last-child {
		border-bottom: none;
	}
	.sub_visual .visual_tab li a {
		justify-content: flex-start;
		padding: 0 20px;
		font-size: 1.7rem;
	}


}

@media screen and (max-width:850px) {

	/* common */
	.only_w {
		display: none !important;
	}
	.only_mo {
		display: block !important;
	}
	.container.sub {
		margin: 50px 0 60px;
	}

	.sub_visual {
		margin-bottom: 50px;
	}
	.sub_ttl_box {
		margin-bottom: 35px;
	}
	.sub_ttl_box h3 {
		font-size: 3rem;
	}
	.sub_ttl_box .cont {
		margin-top: 17px;
		font-size: 2rem;
	}

	.user_form .find_type_box {
		margin-top: 0;
	}
	.user_form .item_menu_tab .tab_btn {
		margin: 0 6px;
	}

	.item_menu_tab {
		margin: 0 -6px 25px;
	}
	.item_menu_tab .tab_btn {
		display: flex;
		align-items: center;
		justify-content: center;
		min-height: 35px;
		padding: 0 8px;
		margin: 0 6px;
		font-size: 1.4rem;
	}

	.item_form .total_number p {
		font-size: 1.7rem;
	}

	.item_list ul {
		margin: -5px;
	}
	.item_list ul li {
		width: calc(50% - 10px);
		margin: 5px;
		border-radius: 10px;
	}
	.item_list .img_box {
		height: 200px;
	}
	.item_list .txt_box {
		padding: 15px;
	}
	.item_list .item_name {
		height: 45px;
		margin-bottom: 10px;
		font-size: 1.5rem;
	}
	.item_list .price_box {
		align-items: flex-end;
		flex-direction: column;
	}
	.item_list .price_box .before_price {
		margin-right: 0;
		font-size: 1.3rem;
	}
	.item_list .price_box .price {
		font-size: 1.4rem;
	}

	.item_ttl_box {
		padding-bottom: 20px;
	}
	.item_ttl_box .item_name {
		font-size: 2.3rem;
	}
	.item_ttl_box .item_name_cont {
		margin-top: 5px;
		font-size: 1.9rem;
	}
	.item_ttl_box .item_location {
		margin-top: 10px;
	}
	.item_ttl_box .share_btn {
		width: 28px;
		height: 28px;
		background-size: 14px;
	}

	.item_view .item_cont_box {
		width: 100%;
	}
	.item_view .item_box_ttl {
		margin-bottom: 20px;
	}
	.item_view .item_box_ttl .box_ttl {
		font-size: 2.3rem;
	}
	.item_view .item_menu_tab {
		margin: 0 -6px 20px;
	}
	.item_view .cont_box {
		padding: 15px 0;
	}
	.item_view .cont_ttl {
		flex-direction: column;
		gap: 10px;
	}
	.item_view .cont_ttl .cont_ico {
		margin-right: 7px;
	}
	.item_view .cont_ttl .cont_name p {
		font-size: 2rem;
	}
	.item_view .cont_ttl .schedule_link {
		margin-left: auto;
		padding: 7px 12px;
		font-size: 1.3rem;
	}
	.item_view .item_menu_tab .tab_btn {
		margin: 0 6px;
	}
	.item_view .item_list .txt_box {
		padding: 12px;
	}

	.item_qna_box .qna_list .top_cont {
		align-items: flex-start;
		flex-direction: column-reverse;
	}
	.item_qna_box .qna_list .user_btn_box {
		margin-bottom: 10px;
	}

	.item_option_box {
		/* display: none; */
		position: fixed;
		top: 100%;
		bottom: 0;
		left: 0;
		width: 100%;
		height: auto;
		margin-left: 0;
		padding: 0;
		border-radius: 0;
		border: none;
		background-color: var(--white-basic-color);
		z-index: 99999999;
	}
	.item_option_box.open {
		top: initial;
	}
	.item_option_box .item_option_btn {
		position: absolute;
		top: -30px;
		left: 50%;
		transform: translateX(-50%);
		width: 100px;
		height: 30px;
		font-size: 0;
		background: url('/assets/images/common/btn_option.png') no-repeat center / contain;
	}
	.item_option_box .item_option_btn:after {
		content:'';
		display: block;
		position: absolute;
		top: 10px;
		left: 40px;
		transform: rotate(180deg);
		width: 20px;
		height: 11px;
		background: url('/assets/images/common/ico_tab_arrow.png') no-repeat center / contain;
	}
	.item_option_box.open .item_option_btn:after {
		transform: rotate(0);
	}
	.item_option_box_cont {
		padding: 0 15px 15px 15px;
		border-top: 1px solid var(--gray-color500);
	}
	.item_option_box .option_wrap dt {
		font-size: 1.6rem;
	}
	.item_option_box .option_ttl {
		margin-bottom: 5px;
		font-size: 1.6rem;
	}

	.view_form .view_top {
		margin-bottom: 20px;
	}
	.view_form .view_top .view_name {
		font-size: 2.3rem;
	}
	.view_form .view_top .view_info span {
		font-size: 1.4rem;
	}
	.view_form .view_top .view_info span:not(:last-child):after {
		top: 2px;
	}
	.view_form .view_cont {
		min-height: 200px;
		padding: 15px;
	}
	.view_form .view_file {
		flex-direction: column;
		margin-top: 15px;
		padding: 15px 0;
	}
	.view_form .view_file .badge {
		width: auto;
		margin-right: 0;
		margin-bottom: 5px;
	}
	.view_form .view_file .file_list a {
		font-size: 1.4rem;
	}
	.view_form .move_wrap {
		margin-top: 15px;
	}
	.view_form .move_box .move_ttl {
		width: 100px;
		height: 50px;
		font-size: 1.4rem;
	}
	.view_form .move_box .move_contents,
	.view_form .move_box .no_contents {
		padding: 0 20px;
		font-size: 1.4rem;
	}

	.form_btn_box {
		flex-direction: column;
		margin-top: 30px;
	}
	.form_btn_box .btn_box {
		width: 100%;
	}
	.form_btn_box .default_btn {
		width: 100%;
		height: 44px;
		line-height: 42px;
	}



	/* company */
	.introduce_box {
		margin-bottom: 60px;
	}
	.introduce_box ul {
		flex-direction: column;
		margin: -8px 0;
	}
	.introduce_box li {
		width: 100%;
		height: 240px;
		margin: 8px 0;
	}
	.introduce_box li:first-child {
		border-radius: 50px 0 0 0;
	}
	.introduce_box li:last-child {
		border-radius: 0 0 50px 0;
	}
	.introduce_box .txt_box {
		top: 50%;
		transform: translateY(-50%);
	}
	.introduce_box .txt_box .number {
		font-size: 2.2rem;
	}
	.introduce_box .txt_box .name {
		margin: 15px 0;
		font-size: 1.8rem;
	}
	.introduce_box .txt_box .cont {
		font-size: 1.5rem;
		opacity: 1;
	}
	.introduce_box .result_box {
		padding-top: 70px;
	}
	.introduce_box .result_box:before {
		top: 20px;
		width: 30px;
		height: 25px;
		background-size: contain;
	}
	.introduce_box .result_box strong {
		font-size: 2.3rem;
		word-break: keep-all;
	}
	.introduce_box .result_box strong span {
		font-size: 2.3rem;
	}

	.introduce_list_wrap {
		margin: 60px 0 30px;
	}
	.introduce_list + .introduce_list {
		margin-top: 50px;
	}
	.introduce_list .list_wrap {
		grid-template-columns: repeat(1, 1fr);
	}
	.introduce_list .list_box {
		padding: 25px 15px;
	}
	.introduce_list .list_box .list_name {
		font-size: 2rem;
	}
	.introduce_list .list_box .list_cont {
		font-size: 1.6rem;
	}


	.history_box {
		padding: 60px 0 80px;
	}
	.history_box .sub_ttl_box {
		text-align: center;
	}
	.history_box .year {
		flex: 0 0 auto;
		width: 110px;
		padding: 0 22px;
		font-size: 2.6rem;
	}
	.history_box .list_wrap {
		padding-bottom: 35px;
	}
	.history_box .list_box {
		width: 100%;
		padding: 0;
	}
	.history_box .list_wrap:not(:last-child):before {
		left: 0;
	}
	.history_box .list_wrap:after {
		left: 0;
	}

	.org_box .txt_box p {
		font-size: 2.3rem;
	}
	.org_box ul li {
		width: 33.33%;
	}
	.org_box ul li img {
		max-width: 100%;
	}

	.table_basic_form .form_ttl_box .form_ttl {
		font-size: 2.3rem;
	}
	.table_basic_form .form_wrap_box {
		margin-bottom: 40px;
	}
	.table_basic_form .order_item_info {
		width: 100%;
		padding: 0;
	}
	.table_basic_form .order_item_info .badge {
		width: 60px;
		font-size: 1.3rem;
		line-height: 26px;
	}
	.table_basic_form .order_item_info .option_wrap {
		margin: 13px 0;
	}
	.table_basic_form .order_item_info .modify_btn {
		width: 100%;
		margin: 0 0 15px 0;
	}
	.table_basic_form .cart_total_price {
		margin-top: 20px;
		padding: 20px;
	}
	.table_basic_form .cart_total_price dt,
	.table_basic_form .cart_total_price dd {
		font-size: 2.8rem;
	}
	.table_basic_form .form_ttl_box .btn_box {
		gap: 10px;
		margin-bottom: 5px;
	}
	.table_basic_form .form_ttl_box .btn_box .default_btn {
		width: 110px;
		height: 38px;
		line-height: 36px;
	}

	.table_list_form table,
	.table_list_form table tbody,
	.table_list_form table tr,
	.table_list_form table th,
	.table_list_form table td {
		display: block;
	}
	.table_list_form table thead {
		display: none;
	}
	.table_list_form table tr {
		padding: 20px 0;
	}
	.table_list_form table td {
		display: flex;
		align-items: center;
		padding: 3px 0;
		text-align: left;
	}
	.table_list_form table td.mo_hidden {
		display: none;
	}
	.table_list_form table td.mo_space {
		justify-content: space-between;
	}
	.table_list_form table td .label {
		display: block;
		flex:0 0 auto;
		width: 80px;
		padding-right: 10px;
	}
	.table_list_form table .state {
		margin: 10px 0 0 0;
	}

	.table_write_form table,
	.table_write_form table tbody,
	.table_write_form table tr,
	.table_write_form table th,
	.table_write_form table td {
		display: block;
	}
	.table_write_form table tr {
		padding: 20px 0;
	}
	.table_write_form table th {
		margin-bottom: 10px;
		padding: 0;
		font-size: 1.6rem;
	}
	.table_write_form table td {
		padding: 0;
	}
	.table_write_form .input_multi {
		margin: 0 0 -10px 0;
	}
	.table_write_form .input_multi .input_wrap {
		margin: 10px -3px;
	}
	.table_write_form .input_wrap {
		margin: 0 -3px;
	}
	.table_write_form .input_wrap input:not([type="checkbox"]),
	.table_write_form .input_wrap select {
		width: 100%;
		margin: 0 3px;
	}
	.table_write_form .hyphen {
		margin: 0 3px;
		font-size: 1.4rem;
	}
	.table_write_form .pay_radiobox {
		justify-content: flex-start;
	}
	.table_write_form .pay_radiobox:after {
		display: none;
	}
	.table_write_form .pay_radiobox input + label {
		justify-content: space-between;
		width: 100%;
	}

	.faq_list .question_box {
		padding: 15px 55px 15px 15px;
	}
	.faq_list .question_box:after {
		top: 26px;
		right: 20px;
		width: 15px;
		height: 7px;
		background-size: contain;
	}
	.faq_list .question_box i {
		width: 22px;
		margin-top: 2px;
		margin-right: 10px;
		font-size: 1.4rem;
		line-height: 22px;
	}
	.faq_list .answer_box {
		padding: 25px 0;
		margin: 0 15px;
	}
	.faq_list .answer_box i {
		width: 22px;
		margin-right: 10px;
		font-size: 1.4rem;
		line-height: 22px;
	}

	.faq_guide {
		align-items: flex-start;
		flex-direction: column;
		padding: 20px 20px 40px;
		margin-top: 40px;
		background-color: #ebebeb;
		background-position: right bottom;
		background-size: 800px;
	}
	.faq_guide .img_box {
		width: 100px;
	}
	.faq_guide .txt_box {
		align-items: flex-start;
		flex-direction: column;
		margin-left: 0;
		margin-top: 20px;
	}
	.faq_guide .txt_box .inquiry_btn {
		width: 110px;
		height: 40px;
		margin-top: 15px;
		margin-left: 0;
		line-height: 38px;
		border-radius: 20px;
	}


}