@charset "UTF-8";
:root { --color-gray: #929292; --color-gray-second: #c4c4c4; --color-gray-third: #707070; --color-gray-fourth: #d8d5d5; --color-gray-fifth: #e3e3e3; --color-gray-sixth: #F6F6F6; --color-black: #000000; --color-black-second: #0d0d0d; --color-black-third: #262421; --color-white: #ffffff; --color-brown: #684117; --color-red: #ff0000; --font-noto-sans-jp: "Noto Sans JP", sans-serif; --font-noto-serif-jp: "Noto Serif JP", serif; --font-saira: "Saira Semi Condensed", sans-serif; --font-libre-baskerville: "Libre Baskerville", serif; }

:root { --color-gray: #929292; --color-gray-second: #c4c4c4; --color-gray-third: #707070; --color-gray-fourth: #d8d5d5; --color-gray-fifth: #e3e3e3; --color-gray-sixth: #F6F6F6; --color-black: #000000; --color-black-second: #0d0d0d; --color-black-third: #262421; --color-white: #ffffff; --color-brown: #684117; --color-red: #ff0000; --font-noto-sans-jp: "Noto Sans JP", sans-serif; --font-noto-serif-jp: "Noto Serif JP", serif; --font-saira: "Saira Semi Condensed", sans-serif; --font-libre-baskerville: "Libre Baskerville", serif; }

.loading { position: fixed; left: 0; top: 0; bottom: 0; right: 0; background: #fff; z-index: 8977; -webkit-transition: 0.5s ease all; -moz-transition: 0.5s ease all; -ms-transition: 0.5s ease all; -o-transition: 0.5s ease all; transition: 0.5s ease all; }

.loading .lds-roller { border-radius: 50%; position: relative; position: absolute; left: 0; right: 0; margin: 0 auto; top: 50%; }

.loading.is-hidden { opacity: 0; pointer-events: none; }

#main { padding-bottom: 105px; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { #main { padding-bottom: 60px; } }

/* ========== end △ */
.main-visual { position: relative; text-align: center; padding: 0; z-index: 23; overflow: hidden; height: 100vh; background: url(../images/mv_bg02.jpg) no-repeat center center; background-size: cover; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .main-visual { min-height: 1070px; } }

/* ========== end △ */
.main-visual .hero--scroll { position: absolute; right: 0; writing-mode: vertical-rl; font-feature-settings: "pkna"; line-height: 160%; letter-spacing: 0.0535714286em; z-index: 22; position: absolute; right: 20px; bottom: 20px; color: #fff; }

.main-visual .mv-catch { position: absolute; content: ""; z-index: 22; left: 20px; right: 20px; max-width: 1100px; margin: 0 auto; text-align: left; top: 50%; transform: translateY(-50%); }

.main-visual .mv-ttl01 { color: #fff; font-size: 24px; line-height: 1.25; letter-spacing: 0.05em; font-weight: bold; position: relative; }

.main-visual .mv-ttl01 .txt { display: inline-block; position: relative; background: url(../images/mv_bg01.png) no-repeat center center; background-size: 100% 100%; padding: 14px 46px 14px; }

.main-visual .mv-ttl01 .txt:after { position: absolute; content: ""; background: url(../images/mv_icon01.png) no-repeat center center; background-size: 100% 100%; width: 121px; height: 88px; top: -14px; right: -94px; z-index: 22; }

.main-visual .mv-ttl02 { color: #000; font-family: "Noto Serif JP", serif; font-size: 83px; line-height: 1.20482; letter-spacing: 0.1em; font-weight: 500; margin: 27px 0 0; text-shadow: calc(3px * 1) calc(3px * 0) 0 #fff, calc(3px * 0.9239) calc(3px * 0.3827) 0 #fff, calc(3px * 0.7071) calc(3px * 0.7071) 0 #fff, calc(3px * 0.3827) calc(3px * 0.9239) 0 #fff, calc(3px * 0) calc(3px * 1) 0 #fff, calc(3px * -0.3827) calc(3px * 0.9239) 0 #fff, calc(3px * -0.7071) calc(3px * 0.7071) 0 #fff, calc(3px * -0.9239) calc(3px * 0.3827) 0 #fff, calc(3px * -1) calc(3px * 0) 0 #fff, calc(3px * -0.9239) calc(3px * -0.3827) 0 #fff, calc(3px * -0.7071) calc(3px * -0.7071) 0 #fff, calc(3px * -0.3827) calc(3px * -0.9239) 0 #fff, calc(3px * 0) calc(3px * -1) 0 #fff, calc(3px * 0.3827) calc(3px * -0.9239) 0 #fff, calc(3px * 0.7071) calc(3px * -0.7071) 0 #fff, calc(3px * 0.9239) calc(3px * -0.3827) 0 #fff; }

.main-visual .mv-ttl02 small { font-size: 67px; line-height: 1.49254; }

.main-visual .mv-ttl03 { color: #000; font-family: "Noto Serif JP", serif; font-size: 24px; line-height: 1.41667; letter-spacing: 0.1em; font-weight: 500; margin: 27px 0 0; text-shadow: calc(2px * 1) calc(2px * 0) 0 #fff, calc(2px * 0.9239) calc(2px * 0.3827) 0 #fff, calc(2px * 0.7071) calc(2px * 0.7071) 0 #fff, calc(2px * 0.3827) calc(2px * 0.9239) 0 #fff, calc(2px * 0) calc(2px * 1) 0 #fff, calc(2px * -0.3827) calc(2px * 0.9239) 0 #fff, calc(2px * -0.7071) calc(2px * 0.7071) 0 #fff, calc(2px * -0.9239) calc(2px * 0.3827) 0 #fff, calc(2px * -1) calc(2px * 0) 0 #fff, calc(2px * -0.9239) calc(2px * -0.3827) 0 #fff, calc(2px * -0.7071) calc(2px * -0.7071) 0 #fff, calc(2px * -0.3827) calc(2px * -0.9239) 0 #fff, calc(2px * 0) calc(2px * -1) 0 #fff, calc(2px * 0.3827) calc(2px * -0.9239) 0 #fff, calc(2px * 0.7071) calc(2px * -0.7071) 0 #fff, calc(2px * 0.9239) calc(2px * -0.3827) 0 #fff; }

/* ▽ PC-TAB layout ========== */
/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .main-visual { height: 350px; }
  .main-visual .mv-catch { left: 15px; right: 15px; top: 57%; }
  .main-visual .mv-ttl01 { font-size: 14px; line-height: 1.42857; }
  .main-visual .mv-ttl01 .txt { font-size: 12px; line-height: 1.66667; letter-spacing: 0em; padding: 7px 12px 7px; }
  .main-visual .mv-ttl01 .txt:after { width: 55px; height: 40px; top: -7px; right: -42px; }
  .main-visual .mv-ttl02 { font-size: 30px; line-height: 1.4; margin: 3px 0 0; }
  .main-visual .mv-ttl02 small { font-size: 28px; line-height: 1.5; }
  .main-visual .mv-ttl03 { font-size: 16px; line-height: 1.75; letter-spacing: 0.05em; margin: 8px 0 0; } }

/* ========== end △ */
.sec01 { padding: 109px 0 50px; position: relative; }

.sec01:after { position: absolute; content: ""; left: 0; right: 0; z-index: 1; top: 0; bottom: 340px; background: url(../images/bg01.jpg) no-repeat center center; background-size: cover; }

.sec01 .ttl01 { font-size: 34px; line-height: 1.32353; letter-spacing: 0.05em; font-weight: bold; margin-bottom: 39px; position: relative; z-index: 22; }

.sec01 .ttl02 { font-size: 60px; line-height: 1.08333; letter-spacing: 0.05em; font-weight: bold; margin-bottom: 75px; position: relative; z-index: 22; }

.sec01 .ttl02 .orange { color: #e86913; }

.sec01 .block { position: relative; z-index: 22; }

.sec01 .block__info .box { width: 100%; }

.sec01 .block__info .box p { font-size: 18px; line-height: 2; letter-spacing: 0.025em; font-weight: 500; margin-bottom: 25px; }

.sec01 .block__info .box p:last-child { margin-bottom: 0; }

.sec01 .block__info .box p.img02 { text-align: right; margin: 133px 84px 0 0; }

.sec01 .block__img .img02 { text-align: right; border-radius: 5px 0 0 5px; }

.sec01 .block__img .img02 .c-img { width: 100%; height: 688px; }

.sec01 .block__img .img02 .c-img img { border-radius: 5px 0 0 5px; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec01 .block { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .sec01 .block__info { width: 53%; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; justify-content: flex-end; }
  .sec01 .block__info .box { width: 100%; max-width: 570px; }
  .sec01 .block__img { width: 47%; text-align: right; } }

/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .sec01 { padding: 45px 0 30px; }
  .sec01:after { bottom: 95px; }
  .sec01 .ttl01 { font-size: 18px; line-height: 1.55556; margin-bottom: 10px; }
  .sec01 .ttl02 { font-size: 30px; line-height: 1.33333; margin-bottom: 25px; }
  .sec01 .block { padding: 0 15px; }
  .sec01 .block__info .box p { font-size: 16px; line-height: 1.5; margin-bottom: 20px; }
  .sec01 .block__info .box p:last-child { margin-bottom: 0; }
  .sec01 .block__img { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; margin: 0 -15px; }
  .sec01 .block__img .img01 { text-align: left; width: 31%; order: 1; }
  .sec01 .block__img .img01 img { border-radius: 0 5px 5px 0; }
  .sec01 .block__img .img02 { order: 2; width: 66%; }
  .sec01 .block__img .img02 .c-img { width: 100%; height: 180px; } }

/* ========== end △ */
.sec02 { padding: 81px 0 120px; }

.sec02 .desc01 { text-align: center; font-size: 16px; line-height: 1.875; letter-spacing: 0.05em; font-weight: 400; }

.sec02 .lst { margin: 62px -10px 0; max-width: 1080px; }

.sec02 .lst li { background: #f7f7f7; border-radius: 5px; width: calc(25% - 20px); padding: 35px 20px 30px; text-align: center; margin: 0 10px 20px; }

.sec02 .lst li .num { color: #000000; font-family: "Jost", sans-serif; font-size: 48px; line-height: 1; letter-spacing: 0.05em; font-weight: 500; text-align: center; margin-bottom: 11px; }

.sec02 .lst li .icon { text-align: center; margin-bottom: 14px; }

.sec02 .lst li .txt { font-size: 18px; line-height: 1.66667; letter-spacing: 0.05em; font-weight: 400; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; align-items: center; min-height: 64px; }

.sec02 .lst li .txt span { width: 100%; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec02 .lst { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; justify-content: center; } }

/* ========== end △ */
.sec02 .btn01 { text-align: center; margin: 45px 0 0; }

.sec02 .btn01 .c-btn01 { margin: 0 auto; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .sec02 { padding: 30px 0 50px; }
  .sec02 .desc01 { text-align: left; font-size: 15px; line-height: 1.53333; }
  .sec02 .desc01 p { font-size: 15px; line-height: 1.53333; }
  .sec02 .lst { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; justify-content: center; margin: 18px -5px 0; }
  .sec02 .lst li { width: calc(50% - 10px); padding: 20px 10px 20px; margin: 0 5px 20px; }
  .sec02 .lst li .num { font-size: 30px; line-height: 1; margin-bottom: 7px; }
  .sec02 .lst li .icon { margin-bottom: 10px; }
  .sec02 .lst li .txt { font-size: 16px; line-height: 1.4375; min-height: 35px; }
  .sec02 .btn01 { margin: 15px 0 0; } }

/* ========== end △ */
.sec03 { position: relative; background: url(../images/bg03.jpg) no-repeat center center; background-size: cover; padding: 0px 0 125px; }

.sec03:before { position: absolute; content: ""; left: 0; right: 0; z-index: 1; top: 0; background: url(../images/bg02_top.png) no-repeat center top; background-size: 1920px auto; height: 320px; }

.sec03:after { position: absolute; content: ""; left: 0; right: 0; z-index: 1; bottom: 0; background: url(../images/bg02_bot.png) no-repeat center bottom; background-size: 1920px auto; height: 320px; }

.sec03 .container { position: relative; z-index: 221; }

.sec03 .desc01 { text-align: center; font-size: 16px; line-height: 1.875; letter-spacing: 0.05em; font-weight: 400; margin-bottom: 35px; }

.sec03 .box01 { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; justify-content: center; padding: 0 128px 0 0; }

.sec03 .box01__img { width: 120px; }

.sec03 .box01__info { max-width: calc(100% - 120px); padding: 32px 0 0; }

.sec03 .box01 .ttl01 span { font-size: 18px; line-height: 1.66667; letter-spacing: 0.05em; font-weight: 500; display: inline-block; position: relative; padding: 0 20px 0 20px; }

.sec03 .box01 .ttl01 span:before { position: absolute; content: ""; left: 0; z-index: 1; top: 2px; background: url(../images/line01.png) no-repeat center top; background-size: 100% 100%; width: 9px; height: 24px; }

.sec03 .box01 .ttl01 span:after { position: absolute; content: ""; right: 0; z-index: 1; top: 2px; background: url(../images/line02.png) no-repeat center center; background-size: 100% 100%; width: 9px; height: 24px; }

.sec03 .box01 .ttl02 { font-size: 45px; line-height: 1.06667; letter-spacing: 0.03em; font-weight: 500; margin: 14px 0 0 10px; }

.sec03 .lst01 { max-width: 1080px; margin: 55px -10px 0; }

.sec03 .lst01 li .cap { text-align: center; font-size: 20px; line-height: 1.5; letter-spacing: 0.05em; font-weight: bold; margin: 14px 0 0; }

.sec03 .lst01 li .cap small { font-size: 18px; line-height: 1.66667; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec03 .lst01 { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .sec03 .lst01 li { width: 25%; padding: 0 10px; } }

/* ========== end △ */
.sec03 .box02 { position: relative; margin: 42px 0 0; text-align: center; padding: 77px 0 0; }

.sec03 .box02:before { position: absolute; content: ""; left: 0; right: 0; z-index: 1; top: 0; background: url(../images/arr01.png) no-repeat center top; background-size: 100% 100%; width: 74px; height: 41px; margin: 0 auto; }

.sec03 .box02__ttl01 { font-size: 40px; line-height: 1.55; letter-spacing: 0.025em; font-weight: 500; }

.sec03 .box02__ttl01 .orange { color: #e86913; font-weight: bold; }

.sec03 .box02__desc01 { font-size: 18px; line-height: 2; letter-spacing: 0.025em; font-weight: 400; margin: 24px 0 0; }

.sec03 .box02 .btn02 { margin: 54px 0 0; text-align: center; }

.sec03 .box02 .btn02 .c-btn01 { margin: 0 auto; }

.sec03 .lst02 { max-width: 1100px; margin: 140px -20px 0; }

.sec03 .lst02 li { position: relative; }

.sec03 .lst02 li .icon { position: absolute; left: 19px; top: -50px; }

.sec03 .lst02 li .ttl { color: #fff; font-size: 26px; line-height: 1.38462; letter-spacing: 0em; font-weight: 500; text-align: center; background: url(../common_img/bg_re01.jpg) repeat center center; background-size: 19px 19px; border-radius: 5px 5px 0 0; padding: 18px 10px 19px 57px; }

.sec03 .lst02 li .img img { border-radius: 0 0 5px 5px; }

.sec03 .lst02 li .info { padding: 35px 0 0; margin-bottom: 30px; }

.sec03 .lst02 li .info .info_desc01 { font-size: 30px; line-height: 1.2; letter-spacing: 0em; font-weight: 500; text-align: left; margin-bottom: 18px; }

.sec03 .lst02 li .info .info_desc02 { font-size: 16px; line-height: 1.875; letter-spacing: 0em; font-weight: 400; }

.sec03 .lst02 li .btn02 { text-align: center; }

.sec03 .lst02 li .btn02 .c-btn01 { margin: 0 auto; max-width: 280px; height: 73px; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec03 .lst02 { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .sec03 .lst02 li { width: 50%; padding: 0 20px; } }

/* ========== end △ */
.sec03 .btn02 { text-align: center; }

.sec03 .btn02 .c-btn01 { margin: 0 auto; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .sec03 { background: url(../images/bg03.jpg) no-repeat center center; background-size: cover; padding: 0px 0 45px; }
  .sec03:before { background: url(../images/bg02_top.png) no-repeat center top; background-size: 130% auto; height: 225px; }
  .sec03:after { background: url(../images/bg02_bot.png) no-repeat center bottom; background-size: 130% auto; bottom: -2px; }
  .sec03 .desc01 { font-size: 15px; line-height: 1.53333; margin-bottom: 15px; text-align: left; }
  .sec03 .desc01 p { font-size: 15px; line-height: 1.53333; }
  .sec03 .box01 { padding: 0; }
  .sec03 .box01__img { width: 55px; }
  .sec03 .box01__info { max-width: calc(100% - 55px); width: calc(100% - 55px); padding: 2px 0 0 10px; }
  .sec03 .box01 .ttl01 span { font-size: 16px; line-height: 1.4375; padding: 0 12px 0 12px; }
  .sec03 .box01 .ttl01 span::before, .sec03 .box01 .ttl01 span::after { top: 5px; height: 36px; }
  .sec03 .box01 .ttl02 { font-size: 30px; line-height: 1.16667; margin: 0 0 0 10px; }
  .sec03 .lst01 { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; margin: 35px -5px 0; }
  .sec03 .lst01 li { width: 50%; padding: 0 5px; margin-bottom: 20px; }
  .sec03 .lst01 li .cap { font-size: 16px; line-height: 1.5; margin: 5px 0 0; }
  .sec03 .lst01 li .cap small { font-size: 15px; line-height: 1.6; }
  .sec03 .box02 { margin: 5px 0 0; padding: 32px 0 0; }
  .sec03 .box02:before { background-size: 100% auto; width: 45px; height: 29px; }
  .sec03 .box02__ttl01 { font-size: 22px; line-height: 1.59091; }
  .sec03 .box02__desc01 { font-size: 16px; line-height: 1.875; text-align: left; margin: 24px 0 0; }
  .sec03 .box02 .btn02 { margin: 25px 0 0; }
  .sec03 .lst02 { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; margin: 60px 0px 0; }
  .sec03 .lst02 li { margin-bottom: 70px; }
  .sec03 .lst02 li:last-child { margin-bottom: 0; }
  .sec03 .lst02 li .icon { left: 10px; top: -50px; max-width: 100px; }
  .sec03 .lst02 li .ttl { font-size: 18px; line-height: 1.33333; padding: 12px 10px 12px 75px; }
  .sec03 .lst02 li .info { padding: 16px 0 0; margin-bottom: 20px; }
  .sec03 .lst02 li .info .info_desc01 { font-size: 20px; line-height: 1.25; margin-bottom: 10px; }
  .sec03 .lst02 li .info .info_desc02 { font-size: 15px; line-height: 1.53333; }
  .sec03 .lst02 li .btn02 .c-btn01 { margin: 0 auto; max-width: 240px; height: 50px; } }

/* ========== end △ */
.sec04 { padding: 59px 0 120px; }

.sec04 .desc01 { text-align: center; font-size: 16px; line-height: 1.875; letter-spacing: 0.05em; font-weight: 400; margin-bottom: 58px; }

.sec04 .lst01 { margin: 0 -18px; }

.sec04 .lst01 li { text-align: center; }

.sec04 .lst01 li .img { overflow: hidden; text-align: center; }

.sec04 .lst01 li .img img { -webkit-transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1); transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1); width: 100%; border-radius: 5px; }

.sec04 .lst01 li .c-btn02 { text-align: center; margin: 33px 0 0 22px; }

.sec04 .lst01 li a { text-decoration: none; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec04 .lst01 { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .sec04 .lst01 li { width: 33.33%; padding: 0 18px; }
  .sec04 .lst01 li a:hover .img img { -webkit-transform: scale(1.15); transform: scale(1.15); } }

/* ========== end △ */
.sec04 .block01 { position: relative; background: url(../images/bg04.jpg) repeat center center; background-size: cover; max-width: 1060px; margin: 59px auto 0; border-radius: 5px; padding: 47px 70px 51px; }

.sec04 .block01__ttl01 { margin-bottom: 14px; }

.sec04 .block01__ttl01 span { display: inline-block; position: relative; font-size: 20px; line-height: 1.5; letter-spacing: 0.05em; font-weight: bold; background-image: -webkit-linear-gradient(30deg, #f5cf3f 0%, #f5cf3f 100%); background-image: -o-linear-gradient(30deg, #f5cf3f 0%, #f5cf3f 100%); background-image: linear-gradient(30deg, #f5cf3f 0%, #f5cf3f 100%); background-repeat: no-repeat; background-size: 100% 4px; background-position: 0 90%; font-style: normal; }

.sec04 .block01__ttl02 { font-size: 45px; line-height: 1.11111; letter-spacing: 0.01em; font-weight: bold; margin-bottom: 26px; }

.sec04 .block01__ttl03 { font-size: 16px; line-height: 1.5; letter-spacing: 0.05em; font-weight: 400; margin-bottom: 28px; }

.sec04 .block01 .btn01 .c-btn01 { height: 65px; max-width: 395px; padding-right: 60px; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .sec04 { padding: 40px 0 60px; }
  .sec04 .desc01 { font-size: 15px; line-height: 1.53333; margin-bottom: 15px; text-align: left; }
  .sec04 .desc01 p { font-size: 15px; line-height: 1.53333; }
  .sec04 .lst01 { margin: 0; }
  .sec04 .lst01 li { text-align: center; margin: 0 0 30px; }
  .sec04 .lst01 li:last-child { margin-bottom: 0; }
  .sec04 .lst01 li .img { text-align: center; }
  .sec04 .lst01 li .img img { width: 100%; border-radius: 5px; }
  .sec04 .lst01 li .c-btn02 { margin: 10px 0 0; }
  .sec04 .block01 { margin: 40px auto 0; padding: 25px 15px 35px; background-position: 62% center; }
  .sec04 .block01__ttl01 { margin-bottom: 10px; line-height: 1.4; }
  .sec04 .block01__ttl01 span { display: inline; font-size: 17px; line-height: 1.35294; }
  .sec04 .block01__ttl02 { font-size: 27px; line-height: 1.2963; letter-spacing: 0em; margin-bottom: 15px; }
  .sec04 .block01__ttl03 { font-size: 15px; line-height: 1.46667; margin-bottom: 20px; }
  .sec04 .block01 .btn01 .c-btn01 { height: 50px; max-width: 320px; padding-right: 20px; } }

/* ========== end △ */
.sec05 { background: url(../images/bg05.jpg) repeat center center; background-size: cover; padding: 85px 0 98px; }

.sec05 .container { max-width: 1100px; }

.sec05 .c-ttl01 .ttljp { margin: 0 0 7px -10px; }

.sec05 .lst { margin: 43px 0 0; }

.sec05 .lst li .thumb { overflow: hidden; }

.sec05 .lst li .thumb .c-img { position: relative; border-radius: 5px; }

.sec05 .lst li .thumb .c-img:before { display: block; content: " "; width: 100%; padding-top: 55.55556%; }

.sec05 .lst li .thumb .c-img > .content { position: absolute; top: 0; left: 0; right: 0; bottom: 0; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec05 .lst li .thumb .c-img { -webkit-transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1); transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1); } }

/* ========== end △ */
.sec05 .lst li .thumb .c-img img { border-radius: 5px; }

.sec05 .lst li .info { padding: 20px 0 0; }

.sec05 .lst li .cats { margin-bottom: 3px; }

.sec05 .lst li .cats .cat { display: inline-block; vertical-align: top; position: relative; text-align: center; color: #fff; font-size: 14px; line-height: 1.42857; letter-spacing: 0.025em; font-weight: 400; background: #79a3ab; border-radius: 3px; padding: 2px 9px 2px; }

.sec05 .lst li .cats .cat.green { background: #79a3ab; }

.sec05 .lst li .cats .cat.blue { background: #4972a0; }

.sec05 .lst li .cats .cat.brown { background: #776535; }

.sec05 .lst li .ttl { font-size: 16px; line-height: 1.5; letter-spacing: 0.05em; font-weight: 400; }

.sec05 .lst li .btn01 { text-align: right; margin: 24px 0 0; }

.sec05 .lst li a { display: block; background: #ffffff; border-radius: 5px; text-decoration: none; padding: 32px 30px 40px; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec05 .lst li a:hover .thumb .c-img { -webkit-transform: scale(1.15); transform: scale(1.15); }
  .sec05 .lst li a:hover .c-link01:after { transform: translateX(4px); } }

/* ========== end △ */
/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec05 .lst { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .sec05 .lst li { width: 31%; margin: 0 3.5% 0 0; }
  .sec05 .lst li:nth-child(3n) { margin-right: 0; } }

/* ========== end △ */
.sec05 .block { position: relative; }

.sec05 .block .btn02 { position: absolute; top: 0; right: 0; }

.sec05 .block .desc { font-size: 16px; line-height: 1.5; letter-spacing: 0.05em; font-weight: 400; margin-bottom: 28px; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .sec05 { padding: 35px 0 45px; background-size: 100% auto; }
  .sec05 .c-ttl01 .ttljp { margin: 0 0 0 -10px; }
  .sec05 .lst { margin: 25px 0 0; }
  .sec05 .lst li { margin-bottom: 30px; }
  .sec05 .lst li:last-child { margin-bottom: 0; }
  .sec05 .lst li .info { padding: 20px 0 0; }
  .sec05 .lst li .cats { margin-bottom: 3px; }
  .sec05 .lst li .cats .cat { font-size: 13px; line-height: 1.38462; border-radius: 3px; padding: 2px 9px 2px; }
  .sec05 .lst li .ttl { font-size: 15px; line-height: 1.46667; }
  .sec05 .lst li .btn01 { text-align: right; margin: 15px 0 0; }
  .sec05 .lst li a { padding: 15px 15px 15px; }
  .sec05 .block .desc { font-size: 15px; line-height: 1.46667; margin-bottom: 20px; }
  .sec05 .block .btn02 { text-align: center; position: relative; margin: 25px 0 0; } }

/* ========== end △ */
.sec06 { padding: 96px 0 0px; }

.sec06 .block .desc01 { font-size: 16px; line-height: 1.875; letter-spacing: 0.05em; font-weight: 400; }

.sec06 .block .lst-btn { margin: 53px 0 0; }

.sec06 .block .lst-btn li { margin-bottom: 20px; }

.sec06 .block .lst-btn li:last-child { margin-bottom: 0; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec06 .block { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .sec06 .block .c-ttl01 .ttljp { font-size: 50px; line-height: 1; letter-spacing: 0.05em; font-weight: bold; margin-bottom: 15px; }
  .sec06 .block .c-ttl01 .ttlen { font-size: 20px; line-height: 1.2; }
  .sec06 .block__info { width: 49%; }
  .sec06 .block__img { width: 60%; margin-right: -9%; padding: 66px 0 0; } }

/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .sec06 { padding: 35px 0 0px; }
  .sec06 .block .c-ttl01 { text-align: center; }
  .sec06 .block .lst-btn { margin: 25px 0 0; }
  .sec06 .block .lst-btn li { text-align: center; margin-bottom: 15px; }
  .sec06 .block .lst-btn li .c-btn01 { margin: 0 auto; max-width: 225px; }
  .sec06 .block .lst-btn li:last-child { margin-bottom: 0; }
  .sec06 .block .desc01 { font-size: 15px; line-height: 1.53333; }
  .sec06 .block__img { text-align: center; margin: 30px 0 0; } }

/* ========== end △ */

/*# sourceMappingURL=maps/top.css.map */
