@charset "utf-8";


div#content01 {margin-top:90px; clip-path: url(#clipshape); }
div#content01 img { width:100%; height: 100%; object-fit: cover; }
@media screen and (max-width:900px) {
    div#content01 { margin-top:70px; }
    div#content01 img { height:500px; }
}

ul.splide__pagination { position:absolute; top:82%; left:50%; transform: translateX(-50%); }
button.splide__pagination__page { background-color: #a6680c !important; height: 6px; width: 6px; border:none; border-radius: 3px; transition: .5s all; margin-left:5px; margin-right:5px; }
button.splide__pagination__page:hover { cursor: pointer; }
button.splide__pagination__page.is-active { background-color: #333 !important; }
@media screen and (max-width:900px) {
    ul.splide__pagination { top:83%; }
}


div#content02 { position:relative; top:-60px; }
div#content02 div#copy_block { margin-bottom:100px; }
div#content02 div#copy_block > img { width:40%; max-width:320px; }
div#content02 div#copy_block > h2 { font-size:36px; font-weight: normal; line-height: 1.3; letter-spacing: 4px; margin-top:50px; margin-bottom:50px; position:relative; }
div#content02 div#copy_block > h2::before { content: ""; width:460px; height:32px; background:url('../img/line01.png'); background-size: contain; background-repeat: no-repeat; position:absolute; top:58%; left: 50%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); z-index: -1; }
div#content02 div#copy_block > h2 > span { display: block; font-size:20px; font-weight: normal; font-family: 'Lora', serif; }
div#content02 div#copy_block > p { font-size:17px; letter-spacing: 3px; line-height: 2.4; }
@media screen and (max-width:900px) {
    div#content02 {top:-40px; }
    div#content02 div#copy_block { width:86%; margin:auto; margin-bottom:50px; }
    div#content02 div#copy_block > img { min-width: 200px; }
    div#content02 div#copy_block > h2 { font-size:24px; letter-spacing: 2px; margin-top:30px; margin-bottom:30px; }
    div#content02 div#copy_block > h2::before { width:280px; height: 26px; }
    div#content02 div#copy_block > h2 > span { font-size:15px; }
    div#content02 div#copy_block > p { font-size:15px; letter-spacing: 1px; line-height: 2; text-align:left; }
}

div#content02 div#parallax01 { margin-bottom:100px; }
div#content02 div#parallax01 .parallax-img { width:100%; }
div#content02 div#parallax01 .parallax-img img { height:300px; object-fit: cover; }
@media screen and (max-width:900px) {
    div#content02 div#parallax01 { margin-bottom:50px; }
    div#content02 div#parallax01 .parallax-img img { height:200px; }
}

div#content03 { margin-top:120px; }
div#content03 > h2 { font-size:36px; font-weight: normal; line-height: 1.3; letter-spacing: 4px; margin-bottom:60px; position:relative; }
div#content03 > h2 ::before { content: ""; width:460px; height:32px; background:url('../img/line01.png'); background-size: contain; background-repeat: no-repeat; position:absolute; top:58%; left: 50%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); z-index: -1; }
div#content03 > h2 > span { display: block; font-size:20px; font-weight: normal; font-family: 'Lora', serif; }
@media screen and (max-width:900px) {
    div#content03 { margin-top:10px; }
    div#content03 > h2 { font-size:24px; letter-spacing: 2px; margin-bottom:30px; }
    div#content03 > h2 ::before { width:280px; height: 26px; }
    div#content03 > h2 > span { font-size:15px; }
}

div#content03 div.feature_flex { margin-bottom:150px; display: flex; justify-content: center; }
div#content03 div.feature_flex div.feature_txt { padding:30px 50px; padding-right:260px; background-color:#fefefe; width:600px; height:350px; display: flex; flex-direction: row-reverse; position:relative; right:-100px; z-index: 1; }
div#content03 div.feature_flex div.feature_txt h3 { text-shadow: #fff 4px 0, #fff -4px 0, #fff 0 -4px, #fff 0 4px, #fff 4px 4px, #fff -4px 4px, #fff 4px -4px, #fff -4px -4px, #fff 2px 4px, #fff -2px 4px, #fff 2px -4px, #fff -2px -4px, #fff 4px 2px, #fff -4px 2px, #fff 4px -2px, #fff -4px -2px; font-size:32px; color:#a6680c; font-weight: normal; height: 480px; margin-top:-65px; overflow: visible; margin-left:20px; line-height: 1; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; vertical-align: middle; text-align: left; font-family: 'Sawarabi Mincho', "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif; }
div#content03 div.feature_flex div.feature_txt h3 > span { line-height: 1; padding:15px 0 15px; letter-spacing: 0; }
div#content03 div.feature_flex div.feature_txt h3 > span > span { display: inline-block; position:relative; top:1px; left:0.2em; }
div#content03 div.feature_flex div.feature_txt h3.mgl_30 { margin-left:30px; }
div#content03 div.feature_flex div.feature_txt p { font-size:15px; padding-left:10px; line-height: 2.2; letter-spacing: 0; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; text-orientation: upright; vertical-align: middle; text-align: left; font-family: 'Sawarabi Mincho', "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif; }

div#content03 div.feature_flex div.feature_img { width:600px; height:350px; position:relative; z-index: 2; top:50px; left:-100px; }
div#content03 div.feature_flex div.feature_img img { object-fit: cover; }

div#content03 div.feature_flex.reversal_box div.feature_txt { padding-right:80px; order:2; position:relative; left:-100px; right:auto; }
div#content03 div.feature_flex.reversal_box div.feature_img { order:1; position:relative; top:50px; right:-100px; left:auto; }
@media screen and (max-width:1200px) {
    div#content03 div.feature_flex div.feature_img { width:50%; }
    div#content03 div.feature_flex div.feature_txt { right:-50px; }
    div#content03 div.feature_flex.reversal_box div.feature_txt { left:-50px;  }
}

@media screen and (max-width:900px) {
    div#content03 div.feature_flex { width:86%; margin:auto; margin-bottom:40px; flex-direction: column; }
    div#content03 div.feature_flex div.feature_txt { width:100%; height:auto; padding:30px; right:0; order:2; display: block; font-size:0; }
    div#content03 div.feature_flex div.feature_txt h3 { font-size:20px; text-shadow: none; letter-spacing: 1px; height: auto; margin:0; padding:0; margin-bottom:5px; writing-mode: horizontal-tb; display: inline-block; }
    div#content03 div.feature_flex div.feature_txt h3 > span { background-color:unset; margin:0; padding:0; letter-spacing: 1px; }
    div#content03 div.feature_flex div.feature_txt h3 > span > span { position: relative; top:0; left:0; }
    div#content03 div.feature_flex div.feature_txt h3.mgl_30 { margin-left:0; }
    div#content03 div.feature_flex div.feature_txt p { font-size:14px; display: block; line-height: 1.7; padding-left:0; writing-mode: horizontal-tb; padding-top:10px; }

    div#content03 div.feature_flex div.feature_img { width:100%; max-width: 100%; height:auto; top:0; left:0; order:1; }

    div#content03 div.feature_flex.reversal_box div.feature_txt { padding-right:30px; left:0; }
    div#content03 div.feature_flex.reversal_box div.feature_img { top:0; right:0; }
}





div#content04 { margin-top:220px; margin-bottom:120px; }
div#content04 div#news_block { background-color:#fefefe; width:780px; padding:60px 80px 80px; margin:auto; border-radius: 3px; }
div#content04 div#news_block > h2 { font-size:42px; font-weight: normal; line-height: 1.3; letter-spacing: 1px; margin-bottom:40px; font-family: 'Lora', serif; }
div#content04 div#news_block > h2 > span { display: block; font-size:20px; font-weight: normal; }
@media screen and (max-width:900px) {
    div#content04 { margin-top:80px; margin-bottom:80px; }
    div#content04 div#news_block > h2 { font-size:28px; margin-bottom:30px; }
    div#content04 div#news_block > h2 > span { font-size:15px; }
}

div#content04 div#news_block div.news_flex { padding-bottom:16px; margin-bottom:16px; border-bottom:dotted #eee 1px;  }
div#content04 div#news_block div.news_flex > a { display: flex; justify-content: center; align-items: center; margin:auto; color:#333; position:relative;  }
div#content04 div#news_block div.news_flex > a::after { content:""; position:absolute; top:15%; left:0; width:100%; height: 70%; background-color:rgba( 250,230,210,0.3 ); transition: ease 0.5s; transform: scale(0, 1); transform-origin: left top; }
div#content04 div#news_block div.news_flex > a:hover::after { transform: scale(1,1); }
div#content04 div#news_block div.news_flex > a > div { position:relative; z-index: 100; }
div#content04 div#news_block div.news_flex:last-child { border-bottom:none; }
div#content04 div#news_block div.news_flex div.news_date { width:12%; margin:auto; font-size:13px; font-family: 'Readex Pro', sans-serif; }
div#content04 div#news_block div.news_flex div.news_category { width:16%; margin:auto; }
div#content04 div#news_block div.news_flex div.news_category p { font-size:14px; line-height: 1.2; display: inline-block; color:#fefefe; background-color:#abd92a; padding:0 5px; border-radius: 1%; }
div#content04 div#news_block div.news_flex div.news_txt { width:64%; margin:auto; text-align:left; line-height: 1.4; }
div#content04 div#news_block div.news_flex div.news_txt > p { letter-spacing: 1px; }
@media screen and (max-width:900px) {
    div#content04 div#news_block { width:86%; padding:40px 7% 60px; }
    div#content04 div#news_block div.news_flex { width:100%; }
    div#content04 div#news_block div.news_flex > a { flex-wrap: wrap; text-align:left; justify-content:flex-start; }
    div#content04 div#news_block div.news_flex > a::after { top:0; height: 100%; }
    div#content04 div#news_block div.news_flex div.news_date { width:90px; margin:0; }
    div#content04 div#news_block div.news_flex div.news_category { width:120px; margin:0; }
    div#content04 div#news_block div.news_flex div.news_txt { font-size:14px; width:100%; margin-top:6px; }
}

div#content04 div#news_content { margin-bottom:40px; }
div#content04 div#news_block a#news_link { letter-spacing: 2px; color:#333; border:#ccc solid 1px; font-size:16px; margin-top:30px; padding:10px 45px 10px 30px; position: relative; overflow: hidden; outline: none; transition:.3s ease-out; }
div#content04 div#news_block a#news_link::after { content: ''; position: absolute; top:40%; right: 30px; width: 8px; height: 8px; border-top: 1px solid #333; border-right: 1px solid #333; transform: rotate(45deg); transition: all .3s; }
div#content04 div#news_block a#news_link:hover { border-color: #333; border-radius: 30px; background-color:#333; color:#fefefe; }
div#content04 div#news_block a#news_link:hover::after { right:15px; border-top: 1px solid #fefefe; border-right: 1px solid #fefefe; }
@media screen and (max-width:900px) {
    div#content04 div#news_block a#news_link { font-size:15px; padding:6px 45px 6px 30px; }
}



div#company_block { margin-bottom:120px; }
div#company_block div#company_title h2 { font-size:36px; font-weight: normal; line-height: 1.3; letter-spacing: 4px; margin-top:50px; margin-bottom:50px; text-align:left; }
div#company_block div#company_title > h2 > span { display: block; font-size:20px; font-weight: normal; font-family: 'Lora', serif; }
@media screen and (max-width:900px) {
    div#company_block { margin-bottom:90px; }
    div#company_block div#company_title h2 { font-size:24px; text-align:center;  margin-top:30px; margin-bottom:30px; }
    div#company_block div#company_title > h2 > span { font-size:15px; }
}

div#company_block div#company_content { display: flex; justify-content: center; align-items: center; }
div#company_block div#company_content div#company_flex div.company_txt { display: flex; justify-content: center; flex-basis: auto; }
div#company_block div#company_content div#company_flex div.company_txt > div:first-child { width:200px; }
div#company_block div#company_content div#company_flex div.company_txt > div:first-child > p { font-size:14px; padding-top:5px; padding-bottom:5px; text-align:right; letter-spacing: 0.5em; padding-left: 30px; padding-right:20px;  line-height: 1.3; }
div#company_block div#company_content div#company_flex div.company_txt > div:last-child { width:210px; padding-left:30px; border-left:solid #333 1px; }
div#company_block div#company_content div#company_flex div.company_txt > div:last-child > p { font-size:14px; padding-top:5px; padding-bottom:5px;  text-align:left; letter-spacing: 2px; line-height: 1.3; }
@media screen and (max-width:900px) {
    div#company_block div#company_content { flex-direction: column; }
    div#company_block div#company_content div#company_flex div.company_txt { align-items: center; width:100%; box-sizing: border-box; }
    div#company_block div#company_content div#company_flex div.company_txt > div:first-child { flex-basis:35%; }
    div#company_block div#company_content div#company_flex div.company_txt > div:first-child > p { letter-spacing: 1px;  padding-left: 20px; padding-right:10px; }
    div#company_block div#company_content div#company_flex div.company_txt > div:last-child { flex-basis:65%; padding-left: 20px; width:auto; }
    div#company_block div#company_content div#company_flex div.company_txt > div:last-child > p { letter-spacing: 1px; }
}








