@charset "UTF-8";
@import "base.css";
@import "fonts.css";
@import url('https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400..800;1,400..800&family=Shippori+Mincho+B1:wght@400;500;600;700&family=Zen+Kaku+Gothic+New:wght@400;500;700&display=swap');
/*==========================================================================*/
/*                                                                          */
/*    base.css  --> スタイルの初期設定を行うため、変更しないで下さい。      */
/*    fonts.css --> フォントの初期設定を行うため、変更しないで下さい。      */
/*                                                                          */
/*==========================================================================*/

/*==========================================================================*/
/*                           Common-Setting                                 */
/*==========================================================================*/
/* 基本タグのフォントサイズを指定（12px -> 120% or 1.2em ） */
h1, h2, h3, h4, h5, h6, input, button, textarea, select, p, blockquote, th, td, pre, address, li, dt, dd {
font-size: 160%;
-webkit-text-size-adjust: none;
font-weight: 400;
}
html:focus-within {scroll-behavior: smooth;}
img {vertical-align: middle;max-width: 100%;flex-shrink: 0;height: auto;}
*,
::before,
::after{box-sizing:border-box;outline: none;}
select { visibility: visible !important; }
a{transition:all ease 0.3s;text-decoration:none;color: var(--txt);}
a[href^="tel:"] {word-break: keep-all;}
/*==========================================================================*/
/*                               Container                                  */
/*==========================================================================*/
html{background:#fff}
body{color:var(--txt);-webkit-text-size-adjust:none;min-width:320px;font-family: var(--font-main)}
#fmail select,
#fmail input,
#fmail textarea{font-family: var(--font-main)}
table {width: 100%}
h1,h2,h3,h4,h5,h6{line-height: 1.5;}
p,
dd,
dt,
li,
th,
td,
address{line-height: 2em;letter-spacing: 0;}
p {margin: 0 0 1.5em;}
p:last-child{margin-bottom: 0}

.bold{font-weight: bold;}
.left{text-align:left}
.right{text-align: right;}
.auto{margin-left: auto; margin-right: auto;}
.red{color: var(--red);}
.txt_line{text-decoration: underline;}
.m0a{display: block;margin: 0 auto;}
.f_big{font-size: 150%;}
.f_sm{font-size: 80%;}
.en, *[class*="text"] {font-family: var(--f-en);}

:root {
  --font-main: "Zen Kaku Gothic New", sans-serif;
	--f-en: "EB Garamond", serif;
	--f-ja: "Shippori Mincho B1", serif;
  --txt: #1D1D1D;     
  --mcolor: #EA6D51;
  --scolor: #999999; 
  --site_size: 1230px;
  
  --gray: #e9e9e9;
  --blue: #83C6C6;
  --green: #92C683;
  --purple: #7B9CE6;
  --pink: #EF6575;
  --orange:#EF8465;
  --red: red;
}

#wrapper{min-width: 1260px;overflow:hidden;margin:0 auto}
.inner{width: var(--site_size);margin:0 auto;position:relative;max-width: 100%;padding: 0 15px;}

/*==========================================================
                       H E A D E R  
==========================================================*/
header{position: relative; z-index: 10;}
#logo { margin: 6px 0 0 0; }
.h_box{width:100%;position: fixed;background-color: #fff;padding:0;}
.h_inner{display:flex;justify-content:space-between;align-items: center;height: 100%;width: 1920px;padding: 0 36px 0 45px;}

.nav_sub_tab { display: flex;margin-bottom: 50px; }
.nav_sub_tab_link {display: none;}
.nav_sub_tab_link.current {display: inherit;}
.nav_sub_tab li { flex: 1; background: #F7F7F7; height: 60px; display: flex; justify-content: center; align-items: center; text-align: center; letter-spacing: 0.025em; cursor: pointer; transition: all 0.3s; }
.nav_sub_tab li.current {background: #F0F0F0;cursor: default;}
.nav_sub_tab_list {display: flex;flex-wrap: wrap;gap: 30px 33px;}
.nav_sub_tab_list li { width: calc((100% - 66px) / 3);font-size: 13px;line-height: 1.76em; }
.nav_sub_tab_list li a {display: flex;background: #FFFFFF;gap: 30px;align-items: center;padding-right: 30px;}
.nav_sub_tab_list li a .img {flex-shrink: 0;width: 110px;height: 110px;display: flex;justify-content: center;align-items: center;overflow: hidden;}
.nav_sub_tab_list li a .img img, .nav_cat24_list li .img img, .nav_page_list li .img img {height: 100%;width: 100%;object-fit: cover;transition: all 0.3s;}

.nav_cat24_list, .nav_page_list {padding: 70px 0 20px;display: flex;gap: 5px;justify-content: center;}
.nav_cat24_list li {flex: 1;font-size: 13px;line-height: 1.76em;}
.nav_cat24_list li .img {height: 115px;display: flex;justify-content: center;align-items: center;overflow: hidden;margin-bottom: 14px;}
.nav_cat24_list li .txt {padding: 0 15px;display: inline-block;display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;}
.nav_page_list li {flex: 1;font-size: 14px;line-height: 1.64em;max-width: 260px;}
.nav_page_list li .ttl { display: block; text-align: center; font-size: 114.28%; margin: 0 0 20px; }
.nav_page_list li .img {height: 120px;display: flex;justify-content: center;align-items: center;overflow: hidden;margin-bottom: 19px;}
.nav_page_list li .txt {padding: 0 30px;display: inline-block;display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;}

/* HAMBUGER BUTTON */
.hamburger{font:inherit;display:block;overflow:visible;margin:0;padding:10px 8px 5px;cursor:pointer;transition-timing-function:linear;transition-duration:.15s;transition-property:opacity,filter;text-transform:none;color:inherit;border:0}
.hamburger-box{position:relative;display:inline-block;width:35px;height:24px}
.hamburger-inner{top:50%;display:block;margin-top:-2px}
.hamburger-inner,
.hamburger-inner::after,
.hamburger-inner::before{position:absolute;width:35px;height:2px;transition:all ease 0.15s;background-color:#000}
.hamburger-inner::after,
.hamburger-inner::before{display:block;content:""}
.hamburger-inner::before{top:-10px}
.hamburger-inner::after{bottom:-10px}
.hamburger--3dxy .hamburger-box{perspective:80px}
.hamburger--3dxy .hamburger-inner{transition:transform .15s cubic-bezier(0.645,0.045,0.355,1),background-color 0 cubic-bezier(0.645,0.045,0.355,1) .1s}
.hamburger--3dxy .hamburger-inner::after,
.hamburger--3dxy .hamburger-inner::before{transition:transform cubic-bezier(0.645,0.045,0.355,1) .1s}
.hamburger--3dxy.is_active .hamburger-inner{transform:rotateX(180deg) rotateY(180deg);background-color:transparent!important}
.hamburger--3dxy.is_active .hamburger-inner::before{transform:translate3d(0,10px,0) rotate(45deg)}
.hamburger--3dxy.is_active .hamburger-inner::after{transform:translate3d(0,-10px,0) rotate(-45deg)}

/*==========================================================
                  M A I N    V I S U A L
==========================================================*/
main{position: relative;padding-top: 50px;z-index: 2;}
.mv{position: relative;padding: 52px 0 0;height: 716px;color: #fff;}
.mv_bg {margin: 0;position: absolute;width: 100%;height: 100%;background: url("../images/main_visual_img1.jpg") no-repeat center center/cover;top: 0;left: 0;z-index: -2;pointer-events: none;-webkit-mask-image: url("../images/mv_mask.png"); mask-image: url("../images/mv_mask.png"); mask-repeat: no-repeat;mask-size: cover;mask-position: bottom center;}
.mv_bg:after {content: '';position: absolute;width: 100%;height: 100%;background: #000;opacity: 0.4;top: 0;left: 0;}
.mv:after { content: ''; position: absolute; background: url(../images/mv_line.svg) no-repeat top left calc(50% + 98px); width: 100%; height: 329px; left: 0; bottom: -86px; pointer-events: none; }
.mv .inner { width: 1015px; height: 100%; display: flex; flex-direction: column; justify-content: center; }
.mv_img { margin: 0; position: absolute; right: -159px; bottom: -2px; transform: rotate(7deg);}
.mv_img:after {content: '';position: absolute;width: 100%;height: 100%;background: var(--mcolor);z-index: -2;left: 53px;top: -7px;transform: rotate(7deg);box-shadow: 40px 23px 15px 0px rgba(0,0,0,0.05);}
.mv_img img {box-shadow: 5px 5px 10px 0px rgba(0,0,0,0.05);}
.mv h2 .txt {display: block;font-size: 35px;font-family: var(--f-ja);margin-top: 46px;}
.mv_txt {font-size: 22px;font-family: var(--f-ja);line-height: 1.8em;margin: 0 0 45px;}
.mv_btn {display: flex;gap: 5px;}
.mv_btn .btn{ margin: 0;}
.mv h2 { margin: 0 0 31px; }

.nav_fixed { position: fixed; width: 270px; top: 196px; z-index: 10; background: #fff; left: 43px;padding: 56px 35px 35px; }
.nav_fixed:after {content: '';position: absolute;background: url("../images/idx_ic1.svg") no-repeat top center/100% auto;width: 11px;height: 23px;left: 15px;top: -23px;}
.nav_fixed_link li a { display: inline-block; position: relative; font-family: var(--f-ja); letter-spacing: 0.05em; padding-left: 18px;}
.nav_fixed_link li a .small {display: block;font-size: 81.25%;font-family: var(--font-main);letter-spacing: 0;line-height: 1em;margin: 0 0 -1px;transition: all 0.3s;}
.nav_fixed_link li a:not(:hover) .small {color: #898989;}
.nav_fixed_link li a:before {content: '';position: absolute;width: 8px;height: 8px; background: var(--mcolor);left: 0;top: 13px;}
.nav_fixed_link li:nth-child(2) a:before {background: var(--blue);}
.nav_fixed_link li:nth-child(3) a:before {background: var(--green);}
.nav_fixed_link li:nth-child(4) a:before {background: var(--purple);top: 26px;}
.nav_fixed_link li:nth-child(5) a:before {background: var(--pink);top: 26px;}
.nav_fixed_link li:nth-child(6) a:before {background: #CCCCCC;}
.nav_fixed_link li { margin: 0 0 17px; }
.nav_fixed_link li:nth-child(3), .nav_fixed_link li:nth-child(4) { margin: 0 0 24px; }
.nav_fixed_link { margin: 0 0 66px; }
.nav_fixed .btn a {height: 69px;font-size: 16px;letter-spacing: 0.05em;}
.nav_fixed .btn a .small {font-size: 87.5%;margin: 5px 0 -3px;}
.nav_fixed .btn:not(:last-child) {margin-bottom: 10px;}
/*==========================================================
                M A I N    C O N T E N T
==========================================================*/
/* DEFAULT TITLE */
.idx_num {width: 94px;display: flex;justify-content: space-between;align-items: flex-end;border-bottom: 1px solid #A7A7A7;margin: 0 auto 18px;font-size: 20px;font-family: var(--f-en);padding: 0 0 2px;}
.idx_num .lager {font-size: 175%;}
.idx_num .small { line-height: 1.4em; }
.idx_ttl {text-align: center;font-family: var(--f-ja);font-size: 40px;margin-bottom: 80px;}
.idx_ttl:after {content: '';position: relative;display: block;background: url("../images/sec01_ic1.svg") no-repeat center center/100% auto;width: 30px;height: 30px;margin: 29px auto 0;}
.idx_ttl .small {font-size: 75%;}
/* DEFAUTL NAME BUTTON */
.btn a{width: 260px; height: 90px; display: flex; justify-content: center; align-items: center; background: #2C2C2C;font-size: 18px; color: #fff;text-decoration: none;font-family: var(--f-ja);font-weight: 500;letter-spacing: 0.05em;max-width: 100%;text-align: center;}
.btn a .small {display: block;font-size: 83.34%;font-family: var(--font-main);letter-spacing: 0;line-height: 1em;margin: 3px 0 0;}
.btn.center a{margin-left: auto; margin-right: auto;}
.btn_pink a {background-color: var(--pink)}

section{padding: 40px 0;}

/*==================== SEC01 ===================*/
.sec01 {padding: 110px 0;}
.sec01_item {width: 350px;margin: 0 15px;background: #fff;position: relative;transition: all 0.3s;}
.sec01_item a {position: absolute;width: 100%;height: 100%;top: 0;left: 0;z-index: 2;}
.sec01_list .slick-list {overflow: visible;}
.sec01_item_cat { margin: 0; background: var(--orange); color: #fff; text-align: right; letter-spacing: 0.025em; height: 93px; display: flex; justify-content: flex-end; align-items: center; padding: 15px 22px; line-height: 1.5625em; font-weight: 500; width: 100%;}
.sec01_item_cat .txt {max-width: 120px;}
.sec01_item_img { margin: 0; width: 194px; height: 291px; display: flex; justify-content: center; align-items: center; overflow: hidden;position: absolute;left: 10px;top: 10px;}
.sec01_item_img img {object-fit: cover;height: 100%;width: 100%;transition: all 0.3s;}
.sec01_item_main { position: relative; height: 433px; display: flex; flex-direction: column; justify-content: space-between; transition: all 0.3s;}
.sec01_item_ttl { text-align: right; width: 100%; padding: 0 35px 34px; font-family: var(--f-ja); font-size: 24px; line-height: 1.67em;}
.sec01_item_ttl .num { display: block; font-size: 66.67%; color: #A7A7A7; margin: 0 0 5px; }
.sec01_item_ttl .ttl {display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;}

.sec01_hidden { position: absolute; width: 97px; height: 433px; background: #fff; bottom: 0; right: 0; border-top: 2px solid var(--orange); display: flex; justify-content: space-between; flex-direction: column; align-items: center; padding: 25px; transition: all 0.3s; }
.sec01_hidden_cat { margin: 30px 0 0; font-size: 14px; font-weight: 500; color: #EF8465; transform: rotate(90deg); width: 102px; line-height: 1.42em; letter-spacing: 0.025em; }
.sec01_hidden_ttl { font-family: var(--f-ja); display: flex; flex-direction: column; align-items: center; }
.sec01_hidden_ttl .num { display: block; color: #A7A7A7; margin: 0 0 5px;text-align: center;}
.sec01_hidden_ttl .ttl {-webkit-writing-mode: vertical-rl; -moz-writing-mode: vertical-rl; -ms-writing-mode: vertical-rl; writing-mode: vertical-rl; -webkit-text-orientation: mixed; -moz-text-orientation: mixed; -ms-text-orientation: mixed; text-orientation: mixed; -ms-writing-mode: tb-rl; text-orientation: upright;display: inline-block; height: 180px; letter-spacing: 0.1em; line-height: 1.5em;}
.sec01_hidden_ttl .ttl .txt {display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;}

.sec01_item.slick-active .sec01_hidden {width: 0;visibility: hidden;opacity: 0;}
.sec01_item:not(.slick-active) .sec01_item_main {width: 0;overflow: hidden;visibility: hidden;opacity: 0;}
.sec01_item:not(.slick-active) {width: 97px;}
.sec01_item.slick-active + .sec01_item:not(.slick-active) {transform: rotate(10deg);margin: -6px 35px 0 70px;}

.sec01_list:after {content: '';position: absolute;width: 100vw;min-width: 1260px;height: 90px;left: 50%;transform: translateX(-50%);background: #000000; background: linear-gradient(180deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);opacity: 0.05;top: 100%;}

#index .slick-arrow {width: 60px;height: 60px;background: rgba(0,0,0,0.3);border-radius: 5px;top: calc(50% - 30px);z-index: 2;transition: all 0.3s;transform: none;}
#index .slick-arrow:before {content: '';position: absolute;border: solid #fff; border-width: 0 1px 1px 0; display: inline-block; padding: 5px; -webkit-transform: rotate(-45deg);transform: rotate(-45deg);top: calc(50% - 5px);left: calc(50% - 7px);opacity: 1;}
#index .slick-next {right: -25px;}
#index .slick-prev {left: -25px;}
#index .slick-prev:before { -webkit-transform: rotate(135deg);transform: rotate(135deg);left: calc(50% - 5px)}
/*==================== SEC02 ===================*/
.sec02 { padding: 93px 0; }
.sec02 .idx_ttl:after {background-image: url("../images/sec02_ic1.svg");}
.sec02_list .slick-list {overflow: visible;}
.sec02_list:after {content: '';position: absolute;width: 100vw;min-width: 1260px;height: 90px;left: 50%;transform: translateX(-50%);background: #000000; background: linear-gradient(180deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);opacity: 0.05;top: 100%;}
.sec02_item {width: 277px;margin: 0 15px;position: relative;transition: all 0.3s;}
.sec02_item a {position: absolute;width: 100%;height: 100%;top: 0;left: 0;z-index: 4;}
.sec02_item_img { height: 412px; margin: 0; display: flex; justify-content: center; align-items: center; overflow: hidden; position: relative; }
.sec02_item_img img {flex-shrink: 0;object-fit: cover;height: 100%;width: 100%;transition: all 0.3s;}
.sec02_item_img:after {content: '';position: absolute;width: 100%;height: 100%;top: 0;left: 0;pointer-events: none;background: #000;opacity: 0.5;z-index: 1;}
.sec02_item_main { position: absolute; width: 100%; height: 100%; top: 0; left: 0; z-index: 2; color: #fff;padding: 15px 15px 26px 30px;display: flex; flex-direction: column;}
.sec02_item_note { font-size: 12px; margin: 0 0 0 auto; display: block; border: 1px solid #fff; padding: 2px; text-align: center; }
.sec02_item_date { font-size: 14px; font-family: var(--f-en); }
.sec02_item_ttl { font-size: 16px; font-family: var(--f-ja); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; margin: 0; }
.sec02_item_cat { margin: auto -15px 0 -30px; background: #83C6C6; color: #fff; font-size: 15px; text-align: center; font-weight: 500; height: 67px; display: flex; justify-content: center; align-items: center; letter-spacing: 0.025em; }

.sec02_item_hidden {margin: 0;width: 90px;height: 100%;bottom: 0;right: 0;background: #83C6C6;color: #fff;-webkit-writing-mode: vertical-rl; -moz-writing-mode: vertical-rl; -ms-writing-mode: vertical-rl; writing-mode: vertical-rl; -webkit-text-orientation: mixed; -moz-text-orientation: mixed; -ms-text-orientation: mixed; text-orientation: mixed; -ms-writing-mode: tb-rl; text-orientation: upright;padding: 25px 10px; position: absolute; z-index: 3; display: flex; align-items: center; font-family: var(--f-ja); letter-spacing: 0.1em; line-height: 1.5em;}
.sec02_item_hidden .txt {display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;}
.sec02_item.slick-active .sec02_item_hidden {width: 0;visibility: hidden;opacity: 0;}
.sec02_item:not(.slick-active) .sec02_item_main {width: 0;overflow: hidden;visibility: hidden;opacity: 0;}
.sec02_item:not(.slick-active) {width: 90px;}
.sec02_item.slick-active + .sec02_item:not(.slick-active) {transform: rotate(10deg);margin: -6px 35px 0 70px;}
/*==================== SEC03 ===================*/
.sec03 { padding: 110px 0; }
.sec03 .idx_ttl { margin-bottom: 40px; }
.sec03 .idx_ttl:after {background-image: url("../images/sec03_ic1.svg");}
.sec03_list_cate { max-width: 1100px; margin: 0 auto 77px; display: flex; padding-left: 27px; gap: 2px;}
.sec03_list_cate li {font-size: 14px; line-height: 1.5em; flex: auto;letter-spacing: 0.025em; text-align: center; padding: 5px 10px; background: #FFFFFF; display: flex; justify-content: center; align-items: center; height: 60px;cursor: pointer;transition: all 0.3s;}
.sec03_list_cate li.current {background: #92C683;color: #fff;cursor: default;}
.sec03_main {display: none;}
.sec03_main.current {display: inherit;}
.sec03_list {position: relative;}
.sec03_list .slick-list {overflow: visible;}
.sec03_list:after {content: '';position: absolute;width: 100vw;min-width: 1260px;height: 90px;left: 50%;transform: translateX(-50%);background: #000000; background: linear-gradient(180deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);opacity: 0.05;top: 100%;}
.sec03_item {width: 277px;margin: 0 15px;position: relative;transition: all 0.3s;background: #fff;z-index: 2;height: 440px;}
.sec03_item a {position: absolute;width: 100%;height: 100%;top: 0;left: 0;z-index: 2;}
.sec03_item:after {content: '';position: absolute;width: 100%;height: 169px;background: #92C683;top: 0;left: 0;z-index: -2;pointer-events: none;}
.sec03_item_cate { text-align: center; margin: 0; color: #fff; height: 70px; display: flex; justify-content: center; align-items: center; font-size: 14px; font-weight: 500; letter-spacing: 0.025em; }
.sec03_item_img { width: 220px; height: 200px; display: flex; justify-content: center; align-items: center; margin: 0 auto 26px;overflow: hidden;}
.sec03_item_img img {object-fit: cover;height: 100%;width: 100%;transition: all 0.3s;}
.sec03_item_ttl { font-size: 18px; font-family: var(--f-ja); margin: 0 25px 24px; line-height: 1.83em; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; height: 66px; }
.sec03_item_info { display: flex; justify-content: space-between; align-items: center; padding: 0 28px 20px 20px; font-size: 14px; }
.sec03_item_info .cate { width: 104px; border: 1px solid #DBDBDB; text-align: center; padding: 2px; }
.sec03_item_info .note {color: #A7A7A7;font-family: var(--f-en);}

.sec03_item_main {position: relative;}
.sec03_item_hidden {position: absolute;width: 80px;background: #fff;height: 100%;bottom: 0;right: 0;transition: all 0.3s;}
.sec03_item_hidden_cate { margin: 23px 0 23px -23px; background: #92C683; font-size: 14px; color: #fff; height: 80px; transform: rotate(90deg); width: 126px; display: flex; justify-content: center; align-items: center; letter-spacing: 0.025em; line-height: 1.42em; font-weight: 500; padding: 18px; }
.sec03_item_hidden_ttl { font-family: var(--f-ja);width: 100%; height: calc(100% - 126px); display: flex; align-items: center; line-height: 1.5em; letter-spacing: 0.1em; padding: 20px 0 30px; -webkit-writing-mode: vertical-rl; -moz-writing-mode: vertical-rl; -ms-writing-mode: vertical-rl; writing-mode: vertical-rl; -webkit-text-orientation: mixed; -moz-text-orientation: mixed; -ms-text-orientation: mixed; text-orientation: mixed; -ms-writing-mode: tb-rl; text-orientation: upright;}
.sec03_item_hidden_ttl .txt { -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;display: -webkit-box;}
.sec03_item.slick-active .sec03_item_hidden {width: 0;visibility: hidden;opacity: 0;}
.sec03_item:not(.slick-active) .sec03_item_main {width: 0;overflow: hidden;visibility: hidden;opacity: 0;}
.sec03_item:not(.slick-active) {width: 80px;}
.sec03_item.slick-active + .sec03_item:not(.slick-active) {transform: rotate(10deg);margin: -6px 35px 0 70px;}
/*==================== SEC04 ===================*/
.sec04 { padding: 93px 0; }
.sec04 .idx_ttl {margin-bottom: 70px;}
.sec04 .idx_ttl:after {background-image: url("../images/sec04_ic1.svg");}
.sec04_list {position: relative;}
.sec04_list .slick-list {overflow: visible;}
.sec04_list:after {content: '';position: absolute;width: 100vw;min-width: 1260px;height: 90px;left: 50%;transform: translateX(-50%);background: #000000; background: linear-gradient(180deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);opacity: 0.05;top: 100%;}
.sec04_item {width: 277px;margin: 0 15px;position: relative;transition: all 0.3s;background: #fff;z-index: 2;height: 440px;}
.sec04_item a {position: absolute;width: 100%;height: 100%;top: 0;left: 0;z-index: 3;}
.sec04_item_main {position: relative;height: 100%;padding-left: 35px;}
.sec04_item_note { width: 35px; background: #7B9CE6; color: #fff; position: absolute; margin: 0; left: 0; top: 0; height: 100%; -webkit-writing-mode: vertical-rl; -moz-writing-mode: vertical-rl; -ms-writing-mode: vertical-rl; writing-mode: vertical-rl; -webkit-text-orientation: mixed; -moz-text-orientation: mixed; -ms-text-orientation: mixed; text-orientation: mixed; -ms-writing-mode: tb-rl; text-orientation: upright; font-size: 14px; padding: 25px 0; letter-spacing: 0.16em;display: flex;align-items: center;}
.sec04_item_img { height: 290px; display: flex; justify-content: center; align-items: center; overflow: hidden;margin: 0 0 20px; }
.sec04_item_img img {object-fit: cover;width: 100%;height: 100%;transition: all 0.3s;}
.sec04_item_cate { margin: 0 0 12px 20px; width: 104px; border: 1px solid #DBDBDB; text-align: center; font-size: 14px; padding: 2px; }
.sec04_item_ttl { margin: 0 20px; font-size: 18px; font-family: var(--f-ja); line-height: 1.83em; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

.sec04_item_hidden { width: 93px; position: absolute; right: 0; bottom: 0; background: #7B9CE6; color: #fff; height: 100%; font-family: var(--f-ja); -webkit-writing-mode: vertical-rl; -moz-writing-mode: vertical-rl; -ms-writing-mode: vertical-rl; writing-mode: vertical-rl; -webkit-text-orientation: mixed; -moz-text-orientation: mixed; -ms-text-orientation: mixed; text-orientation: mixed; -ms-writing-mode: tb-rl; text-orientation: upright; display: flex; align-items: center; padding: 22px; letter-spacing: 0.2em; line-height: 1.5em; }
.sec04_item_hidden .txt { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

.sec04_item.slick-active .sec04_item_hidden {width: 0;visibility: hidden;opacity: 0;}
.sec04_item:not(.slick-active) .sec04_item_main {width: 0;overflow: hidden;visibility: hidden;opacity: 0;}
.sec04_item:not(.slick-active) {width: 93px;}
/*==================== SEC05 ===================*/
.sec05 { padding: 110px 0; }
.sec05 .idx_ttl {margin-bottom: 70px;}
.sec05 .idx_ttl:after {background-image: url("../images/sec05_ic1.svg");}
.sec05_list {position: relative;}
.sec05_list .slick-list {overflow: visible;}
.sec05_item {width: 420px;margin: 0 25px;position: relative;}
.sec05_item a {position: absolute;width: 100%;height: 100%;top: 0;left: 0;z-index: 3;}
.sec05_list:after {content: '';position: absolute;width: 100vw;min-width: 1260px;height: 90px;left: 50%;transform: translateX(-50%);background: #000000; background: linear-gradient(180deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);opacity: 0.05;top: 100%;}
.sec05_item_cate { margin: 0; position: absolute; left: 0; top: 0; background: var(--pink); color: #fff; font-size: 15px; text-align: center; font-weight: 500; letter-spacing: 0.025em; padding: 9px 25px; z-index: 2;}
.sec05_item_img { margin: 0; height: 250px; display: flex; justify-content: center; align-items: center; overflow: hidden; }
.sec05_item_img img {flex-shrink: 0;width: 100%;height: 100%;object-fit: cover;transition: all 0.3s;}
.sec05_item_ttl { position: absolute; bottom: 0; left: 0; background: #000000; background: linear-gradient(0deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%); height: 172px; width: 100%; font-size: 18px; line-height: 1.61em; font-family: var(--f-ja); color: #fff; display: flex; align-items: flex-end; padding: 23px 25px; }
.sec05_item_ttl .txt { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
/*==================== SEC06 ===================*/
.sec06_main { position: relative; z-index: 2; max-width: 1100px; margin: 0 auto;padding: 115px 130px 130px; }
.sec06_main:after {content: '';position: absolute;width: 100vw;height: 100%;top: 0;left: 0;background: #fff;min-width: 1260px;z-index: -2;pointer-events: none;}
.sec06 { padding: 82px 0 0;margin-bottom: -150px; }
.sec06_ttl { font-size: 20px; font-family: var(--f-ja);margin: 0 0 40px; }
.sec06_ttl .en {display: inline-flex;align-items: center;margin-right: 15px;}
.sec06_ttl .en:after {content: '';position: relative;display: inline-block;width: 42px;height: 1px;background: #EA6D51;margin-left: 15px;}
.sec06_img { margin: 0; position: absolute; right: 0; bottom: 53px;box-shadow: 5px 5px 10px 0px rgba(0,0,0,0.05); }
.sec06_lager { font-size: 37px; font-family: var(--f-ja); line-height: 1.64em;margin: 0 0 46px; }
.sec06_txt { font-size: 18px; letter-spacing: 0.025em; line-height: 1.67em; }

/*==========================================================
                        F O O T E R
==========================================================*/
footer{position: relative;}

.ft_top{background: url("../images/ft_bg.jpg") no-repeat top center/cover;padding: 220px 0 107px;}
.ft_bnr { max-width: 1010px; margin: 0 auto 119px; display: flex; gap: 10px;position: relative;left: 14px;}
.ft_bnr li { flex: 1; font-size: 20px;font-weight: 500;letter-spacing: 0.05em;}
.ft_bnr li a {height: 160px;text-align: center;color: #fff;background: var(--mcolor);font-family: var(--f-ja);position: relative;padding: 22px;display: block;}
.ft_bnr li a:after {content: '';position: absolute;width: 16px;height: 16px;background: #fff;right: 8px;bottom: 8px;clip-path: polygon(100% 0, 0% 100%, 100% 100%);}
.ft_bnr li a:before {content: '';position: relative;display: block;background: url("../images/ft_icon1.svg") no-repeat center center/100% auto;width: 52px;height: 52px;margin: 0 auto 20px;}
.ft_bnr li:nth-child(2) a:before {background-image: url("../images/ft_icon2.svg");}
.ft_bnr li:nth-child(3) a:before {background-image: url("../images/ft_icon3.svg");}
.ft_bnr li a .small { display: block; font-size: 80%; font-family: var(--font-main); letter-spacing: 0; font-weight: 400; line-height: 1em; margin: -4px 0 -1px; }
.ft_top_main { display: flex; align-items: center;max-width: 1098px;margin: 0 auto;}
.ft_logo { flex-shrink: 0; margin: 0 92px 0 0; }
.ft_txt { font-size: 22px; letter-spacing: 0.025em; color: #fff; font-family: var(--f-ja); white-space: nowrap; line-height: 1.72em; margin: -6px 0 0;}

/* FOOTER LINK */
.ft_main { padding: 114px 0 48px; }
.ft_link{display: flex;justify-content: center;margin:0 18px 132px 0;}
.ft_link ul:nth-child(1) {margin-right: 61px;}
.ft_link ul:nth-child(2) {margin-right: 98px;}
.ft_link li {letter-spacing: 0.025em;margin: 0 0 3px;}


address{text-align: center;font-size: 14px;letter-spacing: 0.025em;}

/* BACK TO TOP */
.to_top{position:fixed;z-index:9;width:90px;bottom:20px;right:20px;cursor:pointer;transition:all .2s;opacity:0;visibility:hidden}
.to_top.show{transform:scale(1);opacity:1;visibility:visible}