@charset "UTF-8";
/*********************************************/
/*********************************************/
.w_10 { width: 10%  !important; }

.w_20 { width: 20%  !important; }

.w_30 { width: 30%  !important; }

.w_40 { width: 40%  !important; }

.w_50 { width: 50%  !important; }

.w_60 { width: 60%  !important; }

.w_70 { width: 70%  !important; }

.w_80 { width: 80%  !important; }

.w_90 { width: 90%  !important; }

.w_100 { width: 100% !important; }

/*********************************************/
/*********************************************/
.font_06 { font-size: 0.6rem !important; }

.font_07 { font-size: 0.7rem !important; }

.font_08 { font-size: 0.8rem !important; }

.font_09 { font-size: 0.9rem !important; }

.font_10 { font-size: 1rem   !important; }

.font_11 { font-size: 1.1rem !important; }

.font_12 { font-size: 1.2rem !important; }

.font_14 { font-size: 1.4rem !important; }

.font_16 { font-size: 1.6rem !important; }

.font_18 { font-size: 1.8rem !important; }

.font_20 { font-size: 2rem   !important; }

.font_22 { font-size: 2.2rem !important; }

.font_25 { font-size: 2.5rem !important; }

.font_30 { font-size: 3rem   !important; }

.font_35 { font-size: 3.5rem !important; }

.font_40 { font-size: 4rem   !important; }

/*********************************************/
/*********************************************/
.bg_main { background-color: #8A1B1B !important; }

.bg_sub { background-color: #121B4A !important; }

.bg_white { background-color: #ffffff  !important; }

.bg_gray { background-color: #E9E9E9  !important; }

.bg_black { background-color: #000000  !important; }

.bg_dark { background-color: #111111  !important; }

.bg_blue { background-color: #F0F9FE  !important; }

.bg_transparent { background-color: rgba(0, 0, 0, 0.2) !important; }

.tbl-green { background: #a9c392; }

.tbl-green-2 { background: #f1f5ed; }

.tbl-gray { background: #f9f9f9; }

/*********************************************/
/*********************************************/
.t_main { color: #8A1B1B !important; }

.t_sub { color: #121B4A !important; }

.t_white { color: #ffffff !important; }

.t_black { color: #000000 !important; }

.t_gray { color: #D6D1C3 !important; }

.t_red { color: #f00     !important; }

/*********************************************/
/*********************************************/
.lh_10 { line-height: 1   !important; }

.lh_12 { line-height: 1.2 !important; }

.lh_14 { line-height: 1.4 !important; }

.lh_16 { line-height: 1.6 !important; }

.lh_18 { line-height: 1.8 !important; }

.lh_20 { line-height: 2   !important; }

/*********************************************/
/*********************************************/
.ls_01 { letter-spacing: 0.1rem !important; }

.ls_02 { letter-spacing: 0.2rem !important; }

.ls_03 { letter-spacing: 0.3rem !important; }

.ls_04 { letter-spacing: 0.4rem !important; }

.ls_05 { letter-spacing: 0.5rem !important; }

.ls_06 { letter-spacing: 0.6rem !important; }

.ls_07 { letter-spacing: 0.7rem !important; }

.ls_08 { letter-spacing: 0.8rem !important; }

.ls_09 { letter-spacing: 0.9rem !important; }

.ls_10 { letter-spacing: 1rem   !important; }

/*********************************************/
/*********************************************/
.zi_d1 { z-index: -1  !important; }

.zi_0 { z-index: 0   !important; }

.zi_u1 { z-index: 1   !important; }

.zi_u2 { z-index: 2   !important; }

.zi_u5 { z-index: 5   !important; }

.zi_u10 { z-index: 10  !important; }

.zi_u50 { z-index: 50  !important; }

.zi_u100 { z-index: 100 !important; }

.zi_u500 { z-index: 500 !important; }

.zi_u999 { z-index: 999 !important; }

/**********************************************************************
/ ページネーションcss
**********************************************************************/
.pagination { display: flex; align-items: center; justify-content: center; }

.pagination .page-link { border: none; }

.pagination .page-item:first-child .page-link, .pagination .page-item:last-child .page-link { border-radius: 999px !important; }

.pagination span, .pagination a { display: flex; align-items: center; justify-content: center; width: 50px; height: 50px; margin: 4px; text-align: center; line-height: 35px; background-color: #fff; text-decoration: none; border-radius: 999px; vertical-align: text-top; }

.pagination a { font-size: 1rem; transition: all linear .2s; color: #000; }

.pagination a:hover { color: #fff; background-color: #8A1B1B; transition: all linear .2s; }

.pagination .dot { border: none; user-select: none; }

.pagination .current { color: #ffffff; border-color: #8A1B1B; background-color: #8A1B1B; font-size: 0.9rem; user-select: none; }

.pagination a.first, .pagination a.prev, .pagination a.next, .pagination a.last { font-size: 1.3rem; line-height: 33px; }

.pagination span.page_num { display: none; }

/**********************************************************************
/ ページャーcss
**********************************************************************/
.pager { display: flex; justify-content: space-between; align-items: stretch; }

.pager a { display: block; font-size: 1rem; font-weight: bold; background-color: #fff; transition: all linear .2s; color: #8A1B1B; }

.pager a[href]:hover { opacity: .7; }

.bread_wrap { background: #E9E9E9; }

.bread { display: flex; max-width: 1040px; margin: 0 auto; padding: 1rem 0; flex-wrap: wrap; }

.bread li { display: flex; align-items: center; font-size: 1rem; line-height: 1.2; }

.bread li::after { content: ''; display: block; content: "\f0da"; font-weight: 900; font-family: "Font Awesome 5 Free" !important; margin: 0 .8rem 2px 1rem; }

.bread li a { font-size: 1rem; transition: all linear .2s; text-decoration: underline; }

.bread li a:hover { color: #8A1B1B; transition: all linear .2s; text-decoration: none; }

.bread li:last-child::after { display: none; }

@media screen and (max-width: 640px) { .bread { max-width: 100%; padding: 1rem; }
		.ttl { width: 100%; padding-top: 0.8rem; } }

.pc { display: none !important; }

.sp { display: block !important; }

.pc-inline { display: none !important; }

.sp-inline { display: inline !important; }

html, body { font-size: 3.8vw; }

body { font-family: 'Noto Sans JP', sans-serif; line-height: 1.8; }

body .ming { font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", 'Noto Serif JP', serif; }

body .gothic { font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif; }

body .lato { font-family: 'Lato', sans-serif; }

body .noto { font-family: 'Noto Sans JP', sans-serif; }

body .mont { font-family: 'Montserrat', sans-serif; }

body header .items { height: 100px; padding: 0rem 1rem; }

body header .items .header_logo { width: 28%; }

body header .items .header_logo img { width: 100%; }

body header .items .menu_wrapper.open .nav { right: 0; opacity: 1; }

body header .items .menu_wrapper.open .toggle_btn { top: 20px; right: 410px; }

body header .items .menu_wrapper.open .toggle_btn span { background-color: #fff; }

body header .items .menu_wrapper.open .toggle_btn span:nth-child(1) { -webkit-transform: translateY(17px) rotate(-315deg); transform: translateY(17px) rotate(-315deg); }

body header .items .menu_wrapper.open .toggle_btn span:nth-child(2) { opacity: 0; }

body header .items .menu_wrapper.open .toggle_btn span:nth-child(3) { -webkit-transform: translateY(-17px) rotate(315deg); transform: translateY(-17px) rotate(315deg); }

body header .items .menu_wrapper.open #mask { display: block; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: #000; opacity: .8; z-index: 2; cursor: pointer; }

body header .items .menu_wrapper .nav { display: block; position: fixed; top: 0; right: -400px; bottom: 0; width: 400px; padding: 2rem 1rem; background: #ffffff; overflow-x: hidden; overflow-y: auto; -webkit-overflow-scrolling: touch; transition: all .5s; z-index: 3; opacity: 0; margin-right: 0; }

body header .items .menu_wrapper .nav .menu-header_menu-container { width: 100%; }

body header .items .menu_wrapper .nav .menu-header_menu-container .menu { display: flex; flex-wrap: nowrap; flex-direction: column; justify-content: flex-end; align-items: center; }

body header .items .menu_wrapper .nav .menu-header_menu-container .menu > .menu-item { position: static; width: 100%; height: auto; padding: 1rem 0; }

body header .items .menu_wrapper .nav .menu-header_menu-container .menu > .menu-item:nth-child(n+2) { margin-left: 0; border-top: 1px solid #000000; }

body header .items .menu_wrapper .nav .menu-header_menu-container .menu > .menu-item .sub-menu { position: static; bottom: auto; left: auto; width: 100%; height: auto; opacity: 1; transform: translate(0, 0); display: none; }

body header .items .menu_wrapper .nav .menu-header_menu-container .menu > .menu-item .sub-menu li a { position: static; display: block; }

body header .items .menu_wrapper .nav .menu-header_menu-container .menu > .menu-item .sub-menu li a::after { display: none; }

body header .items .menu_wrapper .toggle_btn { display: block; position: fixed; top: 20px; right: 40px; width: 50px; height: 50px; transition: all .5s; cursor: pointer; z-index: 3; }

body header .items .menu_wrapper .toggle_btn span { display: block; position: absolute; left: 0; width: 50px; height: 4px; background-color: #8A1B1B; transition: all .5s; }

body header .items .menu_wrapper .toggle_btn span:nth-child(1) { top: 7px; }

body header .items .menu_wrapper .toggle_btn span:nth-child(2) { top: 23px; }

body header .items .menu_wrapper .toggle_btn span:nth-child(3) { bottom: 7px; }

body header .items .menu_wrapper #mask { display: none; transition: all .3s; }

body header .items .menu_wrapper .sub_nav { position: fixed; width: 100%; left: 0; right: 0; margin: auto; bottom: 0; padding: .5rem; }

body header .items .menu_wrapper .sub_nav a { background: #ffffff; font-size: 1rem; padding: 1rem .5rem; margin: 0; }

body header .vi_wrapper { min-width: 100%; }

body header .vi_wrapper.vi_wrapper_top .mainVi { width: 100%; height: 94vh; }

body header .vi_wrapper.vi_wrapper_top .mainVi #mv_slide { margin-bottom: 2rem; }

body header .vi_wrapper.vi_wrapper_top .mainVi #mv_slide li { height: 94vh; background-size: cover !important; }

body header .vi_wrapper.vi_wrapper_top .ttl { width: 100%; top: 40%; left: 0; right: 0; margin: auto; }

body header .vi_wrapper.vi_wrapper_top .ttl h2 { font-size: 2.5rem; line-height: 1.8; }

body header .vi_wrapper.vi_wrapper_top .scroll_wrap { text-align: center; position: absolute; top: 70%; left: 0; right: 0; margin: auto; }

body header .vi_wrapper.vi_wrapper_top .scroll_wrap .scroll { display: inline-block; padding-bottom: 20px; position: relative; }

body header .vi_wrapper.vi_wrapper_top .scroll_wrap .scroll .txt { font-family: 'Lato', sans-serif; color: #ffffff; font-weight: bold; }

body header .vi_wrapper.vi_wrapper_top .scroll_wrap .scroll::after { animation: scroll 2s infinite; border: solid #ffffff; border-width: 0 0 1px 1px; content: ""; display: inline-block; margin: auto; position: absolute; bottom: 0; right: 0; left: 0; transform: rotate(-45deg); width: 20px; height: 20px; }

body header .vi_wrapper.vi_wrapper_backpart .mainVi { height: 25vh; z-index: -1; }

body header .vi_wrapper.vi_wrapper_backpart .mainVi .mv_backpart { top: 0; left: 0; width: 100%; height: 25vh; background-size: cover !important; z-index: -2; }

body header .vi_wrapper.vi_wrapper_backpart .ttl { top: 50%; left: 0; right: 0; margin: auto; text-align: center; }

body header .vi_wrapper.vi_wrapper_backpart .ttl h2 { font-size: 2rem; color: #ffffff; font-weight: bold; letter-spacing: .5rem; }

body header .vi_wrapper.vi_wrapper_backpart .ttl h3 { font-family: 'Montserrat', sans-serif; color: #ffffff; font-size: 1rem; }

body .content_wrap .inner { max-width: 100%; width: 90%; padding: 4rem 0; }

body .content_wrap .inner .contents_wide_s { max-width: 100%; }

body .content_wrap .inner .contents_wide_m { max-width: 100%; }

body .content_wrap .inner .contents_wide_l { max-width: 100%; }

body .content_wrap .inner h2.contents_title, body .content_wrap .inner h3.contents_title, body .content_wrap .inner h4.contents_title, body .content_wrap .inner h5.contents_title, body .content_wrap .inner h6.contents_title { margin-bottom: 1.5rem; color: #8A1B1B; }

body .content_wrap .inner h2.contents_title .main, body .content_wrap .inner h3.contents_title .main, body .content_wrap .inner h4.contents_title .main, body .content_wrap .inner h5.contents_title .main, body .content_wrap .inner h6.contents_title .main { font-size: 2rem; padding-bottom: .3rem; }

body .content_wrap .inner h2.contents_title .sub, body .content_wrap .inner h3.contents_title .sub, body .content_wrap .inner h4.contents_title .sub, body .content_wrap .inner h5.contents_title .sub, body .content_wrap .inner h6.contents_title .sub { font-size: 1rem; }

body .content_wrap .inner h2.catch_title, body .content_wrap .inner h3.catch_title, body .content_wrap .inner h4.catch_title, body .content_wrap .inner h5.catch_title, body .content_wrap .inner h6.catch_title { font-size: 1.6rem; font-weight: bold; margin-bottom: 2rem; line-height: 1.6; }

body .content_wrap .inner h2.block_title, body .content_wrap .inner h3.block_title, body .content_wrap .inner h4.block_title, body .content_wrap .inner h5.block_title, body .content_wrap .inner h6.block_title { margin-bottom: 1.6rem; padding-left: 1rem; font-size: 1.6rem; }

body .content_wrap .inner h2.block_title_02, body .content_wrap .inner h3.block_title_02, body .content_wrap .inner h4.block_title_02, body .content_wrap .inner h5.block_title_02, body .content_wrap .inner h6.block_title_02 { margin-bottom: 1.5rem; font-size: 1.7rem; }

body .content_wrap .inner .top-itr { flex-wrap: wrap; }

body .content_wrap .inner .top-itr .thm { width: 100%; padding-right: 0; margin-bottom: 2rem; }

body .content_wrap .inner .top-itr .contents { width: 100%; }

body .content_wrap .inner .topNews { padding: 3rem 1.5rem; }

body .content_wrap .inner .news_list a { padding: 1.5rem 0; }

body .content_wrap .inner .news_list a > div:nth-child(1) { width: 30%; font-size: 1rem; }

body .content_wrap .inner .news_list a > div:nth-child(2) { width: 32%; text-align: center; font-size: .8rem; margin: 0; }

body .content_wrap .inner .news_list a > div:nth-child(3) { width: 100%; font-size: 1.1rem; margin-top: 1.2rem !important; }

body .content_wrap .inner .recruit_list a { flex-wrap: wrap; position: relative; display: flex; padding: 1.5rem 2rem 1.5rem .5rem; border-bottom: 1px solid #e9e9e9; transition: all .3s; }

body .content_wrap .inner .recruit_list a:hover { opacity: 0.7; }

body .content_wrap .inner .recruit_list a:first-child { border-top: 1px solid #e9e9e9; }

body .content_wrap .inner .recruit_list a > div { display: flex; flex-wrap: nowrap; flex-direction: row; justify-content: flex-start; align-items: center; }

body .content_wrap .inner .recruit_list a > div:nth-child(1) { width: 28%; padding: .1rem 0; }

body .content_wrap .inner .recruit_list a > div:nth-child(2) { width: 100%; padding-left: 0; font-size: 1.2rem; margin-top: 1rem; }

body .content_wrap .inner .box_list_store .sale { font-size: 1.1rem; }

body .content_wrap .inner .box_list_store .ttl { width: 100%; font-size: 1.3rem; padding-top: 0; }

body .content_wrap .inner .box_list_store a .contents { display: flex; flex-wrap: wrap; align-items: center; }

body .content_wrap .inner .box_list_store a .contents .data { width: 30%; font-size: 1rem; }

body .content_wrap .inner .box_list_store a .contents .cat { font-size: .9rem; }

body .content_wrap .inner .box_list_store a .contents .ttl { width: 100%; font-size: 1.3rem; }

body .content_wrap .inner .store { padding-bottom: 2.5rem; margin-bottom: 2.5rem; border-bottom: solid 1px #e9e9e9; }

body .content_wrap .inner .store .store_list { flex-wrap: wrap; }

body .content_wrap .inner .store .store_list .thm { width: 100%; margin-bottom: 2rem; }

body .content_wrap .inner .store .store_list .contents { width: 100%; padding-left: 0; }

body .content_wrap .inner .store:nth-child(even) .store_list .contents { padding-right: 0rem; }

body .content_wrap .inner .store:last-child { border-bottom: 0; }

body .footer_contact .inr .title { font-size: 1.8rem; }

body .footer_contact .inr .num { font-size: 1.8rem; line-height: 1.4; }

body .footer_contact .inr .num span { font-size: 1.3rem; }

body footer .inner { width: 90%; margin: 0 auto; padding: 4rem 0; }

body footer .inner .f_logo { display: block; width: 40%; margin: 0 auto; }

body footer .inner .f_logo img { width: 100%; }

body .bg_rug { background-size: cover; }

body .table th { padding: 1.3rem 1rem; }

body .table td { padding: 1.3rem 1rem; }

body .tab_list { flex-wrap: wrap; justify-content: space-between; }

body .tab_list a { width: calc(33.3% - 0rem); padding: .5rem .5rem; text-align: center; font-size: .9rem; margin-right: 0; }

body .box_list { width: 100%; }

body .box_list.box_2 .box_item_1 { width: 100%; margin-right: 0; margin-bottom: -5%; }

body .box_list.box_2 .box_item_2 { padding: 2rem; margin: 0 auto; width: 100%; }

body .box_list.box_3 > * { width: calc(100%); margin-left: 0; margin-top: 2rem; }

body .box_list.box_3 > *:first-child { margin-top: 0rem; }

body .box_list.box_3_2 > * { width: calc(100%); }

body .box_list.box_4 > * { width: calc(50% - (1.5rem/2)); }

body .box_list.box_4 > *:nth-child(4n+1) { margin-left: 1rem; }

body .box_list.box_4 > *:nth-child(2n+1) { margin-left: 0; }

body .box_list.box_4 > *:nth-child(n+5) { margin-top: 0; }

body .box_list.box_4 > *:nth-child(n+3) { margin-top: 1rem; }

body .box_list.box_6 > * { width: calc(33.333333%); }

body .overlay_box li a .contents .contents_inr { padding: .8rem 1rem; display: flex; flex-wrap: wrap; flex-direction: row; justify-content: flex-start; align-items: center; line-height: 1.2; }

body .overlay_box li a .contents .contents_inr .cat { font-size: .8rem; color: #8A1B1B; border: solid 1px #8A1B1B; border-radius: 999px; padding: .2rem 1.5rem; }

body .overlay_box li a .contents .contents_inr .ttl { width: 50%; font-size: 1.3rem; font-weight: bold; color: #8A1B1B; margin: 0 0 0 1rem; padding-top: 0; }

body .overlay_box li a .contents .contents_inr .txt { font-size: 1rem; width: 100%; margin-top: .5rem; }

body .pour_box .left, body .pour_box .right { float: none; margin-right: 0; margin-left: 0; margin-bottom: 2rem; width: 100%; }

body .rugimage_textarea .image { margin-bottom: -10%; }

body .rugimage_textarea .txt { width: 90%; padding: 3rem 1.5rem; }

body .rugimage_textarea .txt h3.contents_title { font-size: 1.8rem !important; }

body .more_link a { text-align: center; padding: 1rem; width: 100%; font-size: 1.1rem; }

body .more_link.basic a { font-size: 1.3rem; }

body .map { padding-bottom: 80%; }

body form .form_half > div { width: 100%; }

body form .form_item { display: flex; flex-wrap: wrap; flex-direction: row; justify-content: space-between; align-items: flex-start; padding: 1rem 0 1.5rem 0; }

body form .form-control { padding: .8rem; }

body form label { display: flex; flex-wrap: wrap; flex-direction: row; justify-content: flex-start; align-items: center; font-size: 1rem; width: 100%; }

body form input { font-size: 1rem; }

body form input[type="submit"] { width: 100%; }
