/* argument */
/* font style */
/* site style */
/* [ opacity ]
-------------------------------------------------*/
/* [ display style ]
-------------------------------------------------*/
/* [ background-image ]
-------------------------------------------------*/
/* [ writing-mode ]
-------------------------------------------------*/
/* [ illustrator & photoshop letter spacing ]
-------------------------------------------------*/
/* [ easy breakpoint ]
-------------------------------------------------*/
/* [ easy transform ]
-------------------------------------------------*/
/* ================================================== ttl_page ================================================== */
.main-visual { position: relative; height: 672px; }

@media only screen and (min-width: 768px) and (max-width: 830px) { .main-visual { height: 860px; } }

.main-visual .slick-list, .main-visual .slick-track, .main-visual .slick-slide, .main-visual .slick-slide > div { height: 100%; }

.main-visual .mv-ttl01 { position: absolute; font-size: 50px; line-height: 1.3; letter-spacing: 0.1em; font-weight: 500; text-shadow: 0 0 16px rgba(0, 0, 0, 0.7); color: #fff; text-align: left; top: 283px; left: -5px; }

@media only screen and (min-width: 768px) and (max-width: 830px) { .main-visual .mv-ttl01 { top: 230px; font-size: 46px; line-height: 1.30435; left: 30px; } }

.main-visual .mv-ttl01 span { position: relative; z-index: 9; }

.main-visual .mv-ttl01:before { position: absolute; content: ""; left: -144px; top: -50px; width: 251px; height: 283px; background: url(../images/mv_icon.png) no-repeat center center; background-size: 100%; }

.main-visual .mv-ttl02 { font-size: 40px; line-height: 1.2; letter-spacing: 0.05em; font-weight: 400; color: #282828; text-align: center; margin-bottom: 20px; }

@media only screen and (min-width: 768px) and (max-width: 830px) { .main-visual .mv-ttl02 { font-size: 28px; line-height: 1.42857; margin-bottom: 10px; } }

.main-visual .mv-ttl03 { font-size: 18px; line-height: 1.66667; letter-spacing: 0em; font-weight: 600; color: #282828; text-align: left; }

.main-visual .mv-ttl03 span { color: #3399cc; }

.main-visual .mv-desc01 { font-size: 18px; line-height: 1.66667; letter-spacing: 0em; font-weight: 400; text-align: center; margin-bottom: 26px; }

.main-visual .mv-desc01 span { background: #cdeaff; display: inline-block; padding: 0 10px; }

.main-visual .mv-desc02 { font-size: 14px; line-height: 2.14286; letter-spacing: 0em; margin-bottom: 28px; }

.main-visual .mv-box01 { position: absolute; bottom: 5px; right: -4px; max-width: 57%; padding-bottom: 26px; }

.main-visual .mv-box01 .mv-btn { position: absolute; right: 21px; bottom: 0; }

.main-visual .mv-box01 .mv-btn a { text-decoration: none; display: inline-block; width: 102px; background: #3daefd; font-size: 14px; color: #88e298; text-align: center; padding: 18px 5px 40px; position: relative; border-radius: 50%; box-shadow: 0 0 20px rgba(0, 0, 0, 0.1); transition: All 0.3s ease; }

.main-visual .mv-box01 .mv-btn a:before { position: absolute; content: ""; left: 0px; bottom: 22px; right: 0; margin: 0 auto; width: 42px; height: 7px; background: url(../common_img/arr01.png) no-repeat center center; background-size: 100%; transition: All 0.3s ease; }

@media (min-width: 768px) { .main-visual .mv-box01 .mv-btn a:hover { opacity: 0.9; }
  .main-visual .mv-box01 .mv-btn a:hover:before { left: 5px; } }

.main-visual .mv-box01 span { position: relative; z-index: 9; }

.main-visual .mv-slider { height: 100%; }

.main-visual .mv-slider .container { position: relative; height: 100%; }

.main-visual .mv-slider .mv { width: 100%; height: 100%; }

.main-visual .mv-slider .mv01 { background: url(../images/mv_bg01.jpg) no-repeat center; background-size: cover; }

.main-visual .mv-slider .mv02 { background: url(../images/mv_bg02.jpg) no-repeat center; background-size: cover; padding: 76px 0 130px; }

.main-visual .mv-slider .mv02 .box { background: #fff; border: 2px solid #3daefd; border-radius: 15px; padding: 30px 72px 3px; background: url(../images/mv_img02.jpg) no-repeat center; background-size: cover; }

@media only screen and (min-width: 768px) and (max-width: 1230px) { .main-visual .mv-slider .mv02 .box { padding: 30px 40px 3px; } }

@media only screen and (min-width: 768px) and (max-width: 830px) { .main-visual .mv-slider .mv02 .box { padding: 20px 20px 3px; } }

@media (max-width: 767px) { .main-visual .mv-slider .mv02 .box { background-image: url(../images/mv_img02_sp.jpg); } }

@media (min-width: 768px) { .main-visual .mv-slider .mv02 .box-flex01 { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; justify-content: space-between; } }

@media (max-width: 767px) { .main-visual { height: auto; min-height: 570px; }
  .main-visual .slick-track { display: flex; }
  .main-visual .slick-track .slick-slide { display: flex; height: auto; align-items: center; justify-content: center; }
  .main-visual .mv-ttl01 { position: relative; font-size: 30px; line-height: 1.1; top: 0; left: auto; right: 0; margin: 17% 2% 28px 28%; } }

@media only screen and (max-width: 767px) and (max-width: 420px) { .main-visual .mv-ttl01 { margin: 19% 1% 30px 26%; font-size: 27px; line-height: 1.22222; } }

@media only screen and (max-width: 767px) and (max-width: 375px) { .main-visual .mv-ttl01 { margin: 22% 1% 30px 22%; font-size: 25px; line-height: 1.28; } }

@media (max-width: 767px) { .main-visual .mv-ttl01 span { position: relative; z-index: 9; }
  .main-visual .mv-ttl01:before { left: -76px; top: -25px; width: 135px; height: 155px; } }

@media only screen and (max-width: 767px) and (max-width: 420px) { .main-visual .mv-ttl01:before { left: -65px; top: -22px; width: 125px; height: 145px; } }

@media only screen and (max-width: 767px) and (max-width: 375px) { .main-visual .mv-ttl01:before { left: -55px; top: -20px; width: 102px; height: 125px; } }

@media (max-width: 767px) { .main-visual .mv-ttl02 { font-size: 20px; line-height: 1.5; margin-bottom: 10px; }
  .main-visual .mv-ttl03 { font-size: 18px; line-height: 1.66667; } }

@media only screen and (max-width: 767px) and (max-width: 420px) { .main-visual .mv-ttl03 { font-size: 17px; line-height: 1.64706; } }

@media only screen and (max-width: 767px) and (max-width: 375px) { .main-visual .mv-ttl03 { font-size: 16px; line-height: 1.75; } }

@media (max-width: 767px) { .main-visual .mv-desc01 { font-size: 14px; line-height: 1.78571; margin-bottom: 8px; }
  .main-visual .mv-desc01 span { padding: 0 5px; margin-bottom: 5px; }
  .main-visual .mv-desc02 { font-size: 13px; line-height: 1.76923; margin-bottom: 10px; }
  .main-visual .mv-box01 { position: relative; bottom: 0; right: 0; left: 0; max-width: 100%; padding-bottom: 15px; }
  .main-visual .mv-box01 .mv-btn { right: -5px; bottom: 28px; }
  .main-visual .mv-box01 .mv-btn a { width: 102px; font-size: 14px; padding: 18px 5px 40px; } }

@media only screen and (max-width: 767px) and (max-width: 420px) { .main-visual .mv-box01 .mv-btn a { width: 95px; font-size: 14px; padding: 18px 5px 36px; }
  .main-visual .mv-box01 .mv-btn a:before { bottom: 22px; } }

@media (max-width: 767px) { .main-visual .mv-box01 span { position: relative; z-index: 9; }
  .main-visual .mv-slider { height: 100%; }
  .main-visual .mv-slider .mv01 { background-image: url(../images/mv_bg01_sp.jpg); height: 100%; }
  .main-visual .mv-slider .mv02 { background-image: url(../images/mv_bg02_sp.jpg); padding: 20px 0 20px; }
  .main-visual .mv-slider .mv02 .box { left: 0; right: 0; position: relative; border: 1px solid #3daefd; border-radius: 10px; padding: 18px 10px 5px; } }

.sec01 { margin: -91px 0 60px; position: relative; z-index: 129; pointer-events: none; }

.sec01 .c-datetime01 { pointer-events: auto; }

@media (max-width: 767px) { .sec01 { margin: 17px 0 15px; } }

.sec02 { position: relative; margin-bottom: 97px; }

.sec02:before { position: absolute; content: ""; left: 0; right: 0; top: 80px; bottom: 75px; background: url(../images/img01.jpg) no-repeat center; background-size: cover; }

.sec02 .container { position: relative; z-index: 29; }

.sec02 .info-new { max-height: 209px; }

.sec02 .info-new ul li { margin-bottom: 16px; }

.sec02 .info-new ul li:last-child { margin-bottom: 0; }

.sec02 .info-new .date { width: 102px; font-size: 15px; padding-top: 3px; }

.sec02 .info-new .date span { text-align: center; border-radius: 13px; background: #3daefd; display: inline-block; line-height: 1.4; padding: 0 0 2px; width: 100%; color: #fff; }

.sec02 .info-new .desc { width: calc(100% - 102px); padding-left: 20px; transition: 0.3s ease; line-height: 1.8; letter-spacing: 0em; }

.sec02 .info-new a { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: flex-start; -moz-justify-content: flex-start; -ms-justify-content: flex-start; justify-content: flex-start; text-decoration: none; transition: 0.3s ease; }

.sec02 .info-new .txt {line-height: 1.8; margin-top: 10px;  font-weight: bold;}

@media (min-width: 768px) { .sec02 .info-new a:hover { opacity: 0.7; }
  .sec02 .info-new a:hover .desc { color: #3daefd; text-decoration: underline; } }

.sec02 .block01 { border: 2px solid #3daefd; border-radius: 15px; background: #fff; box-shadow: 0 0 50px rgba(0, 0, 0, 0.1); padding: 31px 40px 33px 79px; margin-bottom: 30px; }

.sec02 .block01 .ttl01 { position: relative; font-size: 27px; line-height: 1.18519; letter-spacing: 0em; font-weight:bold ; padding-left: 40px; margin-bottom: 29px;  color: #3399cc;}

.sec02 .block01 .ttl01:before { position: absolute; content: ""; left: 0; top: 2px; width: 28px; height: 28px; background: url(../common_img/icon_news.png) no-repeat center; background-size: 100% auto; }

.sec02 .block01 .info-new .date span { background: #88e298; color: #1d1d1d;  font-weight: bold;}

.sec02 .block01 .info-new .desc { padding-left: 20px; color: #3daefd;  font-weight: bold;}

@media (min-width: 768px) { .sec02 .block01 .info-new a:hover .desc { color: #88e298; } }

.sec02 .block02 { border-radius: 15px; background: #fff; box-shadow: 0 0 50px rgba(0, 0, 0, 0.1); padding: 36px 40px 30px 10px; }

.sec02 .block02 .info-new { padding-right: 45px; }

@media (min-width: 768px) { .sec02 .block02 { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; align-items: center; }
  .sec02 .block02 .block02-left { width: 252px; text-align: center; padding-right: 10px; }
  .sec02 .block02 .block02-right { width: calc(100% - 260px); } }

@media (max-width: 767px) { .sec02 { margin-bottom: 45px; }
  .sec02 .block01 .info-new .dis_flex {  display: block;}
  .sec02 .info-new .txt {font-size: 14px; margin-top: 8px;}
  .sec02:before { top: 90px; bottom: 80px; background-image: url(../images/img01_sp.jpg); }
  .sec02 .container { position: relative; z-index: 29; }
  .sec02 .info-new { max-height: 260px; } }

@media only screen and (max-width: 767px) and (max-width: 420px) { .sec02 .info-new { max-height: 150px; } }

@media (max-width: 767px) { .sec02 .info-new ul li { margin-bottom: 16px; }
  .sec02 .info-new ul li:last-child { margin-bottom: 0; }
  .sec02 .info-new .date { width: 95px; font-size: 14px; padding-top: 0; margin-bottom: 9px; }
  .sec02 .info-new .date span { border-radius: 10px; padding: 1px 0 1px; }
  .sec02 .info-new .desc { width: 100%; padding-left: 0; font-size: 14px; line-height: 2.14286; line-height: 1.7; }
  .sec02 .info-new a { display: block; }
  .sec02 .block01 { border: 1px solid #3daefd; border-radius: 10px; box-shadow: 0 0 30px rgba(0, 0, 0, 0.1); padding: 17px 10px 15px 10px; margin-bottom: 20px; }
  .sec02 .block01 .ttl01 { font-size: 20px; line-height: 1.25; padding-left: 27px; margin-bottom: 17px; }
  .sec02 .block01 .ttl01:before { top: 4px; width: 20px; height: 20px; }
  .sec02 .block01 .info-new { display: block; }
  .sec02 .block01 .info-new .date { width: 95px; display: block; font-size: 14px; }
  .sec02 .block01 .info-new .desc { padding-left: 0; display: block; width: 100%; line-height: 1.7; }
  .sec02 .block01 .info-new a { font-size: 14px; }
  .sec02 .block02 { border-radius: 10px; box-shadow: 0 0 30px rgba(0, 0, 0, 0.1); padding: 22px 10px 17px 10px; }
  .sec02 .block02 .c-ttl01 { margin-bottom: 0; }
  .sec02 .block02 .info-new { padding-right: 12px; }
  .sec02 .block02 .block02-left { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; justify-content: space-between; align-items: center; margin-bottom: 18px; }
  .sec02 .block02 .sec02-btn01 { width: 105px; } }

@media (max-width: 767px) { .scrollbar-inner > .scroll-element.scroll-y { width: 4px; } }

.sec03 { position: relative; padding: 110px 0 73px; margin-bottom: 70px; }

.sec03:before { position: absolute; content: ""; left: 0; top: 0; bottom: 125px; width: calc(50% + 190px); background: #359ed7; }

.sec03 .sec03-bg { position: absolute; content: ""; right: 0; top: 58px; bottom: 0; width: calc(50% + 295px); background: url(../images/img02.jpg) no-repeat center; }

@media (min-width: 768px) { .sec03 .sec03-bg { text-indent: -9999px; } }

.sec03 .block01 { max-width: 57.7%; border-radius: 15px; background: #fff; padding: 56px 10px 63px; position: relative; z-index: 29; text-align: center; }

.sec03 .block01 .c-ttl01 { text-align: center; margin-bottom: 32px; }

.sec03 .block01 .c-ttl01 span { padding-left: 53px; }

.sec03 .block01 .c-ttl01 span:before { width: 40px; height: 47px; top: 4px; }

.sec03 .block01 .c-ttl01 strong { font-size: 48px; font-weight: 400; }

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

@media (max-width: 767px) { .sec03 { padding: 0 0 20px; margin-bottom: 0; }
  .sec03:before { top: 48px; bottom: 120px; width: 100%; }
  .sec03 .sec03-bg { position: relative; right: 0; top: 0; bottom: 0; left: 0; background: none; margin-bottom: -70px; padding: 0 10px; margin-right: auto; width: auto; }
  .sec03 .block01 { max-width: 92%; border-radius: 10px; background: #fff; padding: 28px 15px 20px; margin-left: 15px; }
  .sec03 .block01 .c-ttl01 { margin-bottom: 22px; text-align: left; }
  .sec03 .block01 .c-ttl01 span { padding-left: 42px; }
  .sec03 .block01 .c-ttl01 span:before { width: 30px; height: 35px; top: 4px; }
  .sec03 .block01 .c-ttl01 strong { font-size: 35px; } }

@media only screen and (max-width: 767px) and (max-width: 420px) { .sec03 .block01 .c-ttl01 strong { font-size: 29px; } }

@media only screen and (max-width: 767px) and (max-width: 375px) { .sec03 .block01 .c-ttl01 strong { display: block; } }

@media (max-width: 767px) { .sec03 .block01 .desc01 { font-size: 14px; line-height: 1.69231; margin-bottom: 20px; text-align: left;} }

.sec04 { position: relative; margin-bottom: 57px; }

.sec04 .block01 { position: relative; padding: 40px 0 24px; }

.sec04 .block01 .c-ttl01 { text-align: center; margin-bottom: 52px; }

.sec04 .block01:before { position: absolute; content: ""; left: 0; top: 0; bottom: 0; width: calc(50% + 600px); background: #cdeaff url(../images/bg01.png) no-repeat right top; text-indent: -9999px; }

.sec04 .block01:after { position: absolute; content: ""; left: 0; bottom: 0; width: 395px; height: 178px; background: url(../images/bg02.png) no-repeat left bottom; }

.sec04 .tbl02 { width: 100%; position: relative; z-index: 29; }

.sec04 .tbl02 th, .sec04 .tbl02 td { text-align: center; font-weight: normal; vertical-align: middle; border: 1px solid #1a1a1a; }

.sec04 .tbl02 th { background: #3399cc; color: #fff; font-size: 15px; padding: 24px 5px; }

@media (min-width: 768px) { .sec04 .tbl02 th { width: 12%; }
  .sec04 .tbl02 th:first-child { width: 14%; } }

.sec04 .tbl02 td { color: #1a1a1a; background: #fff; padding: 7px 2px; }

.sec04 .tbl02 .bg-gray01 { background: #f1f1f1; }

.sec04 .tbl02 .bg-blue01 { background: #bcdcec; }

.sec04 .tbl02 .h02 td { padding: 28px 2px; }

.sec04 .block02 .list-hsi { font-size: 16px; line-height: 1.875; letter-spacing: 0.05em; margin-top: 18px; }

.sec04 .block02 .list-hsi li span { display: inline-block; vertical-align: top; }

.sec04 .block02 .list-hsi li .hsi { width: 29px; }

.sec04 .block02 .list-hsi li .txt { width: calc(100% - 29px); }

@media (max-width: 767px) { .sec04 { margin-bottom: 40px; }
  .sec04 .block01 { padding: 40px 0 30px; }
  .sec04 .block01 .c-ttl01 { margin-bottom: 20px; font-size: 19px; }
  .sec04 .block01:after { position: absolute; content: ""; left: 0; bottom: 0; width: 125px; height: 170px; background-image: url(../images/bg02_sp.png); background-size: 100% auto; }
  .sec04 .block01:before { width: 100%; background-size: 20% auto; }
  .sec04 .tbl02 tbody { width: 100%; }
  .sec04 .tbl02 th { font-size: 14px; padding: 7px 5px; }
  .sec04 .tbl02 td { padding: 7px 2px; font-size: 14px; }
  .sec04 .tbl02 .h02 td { padding: 7px 2px; }
  .sec04 .block02 .list-hsi { font-size: 14px; line-height: 1.78571; margin-top: 18px; } }

.sec05 { position: relative; margin-bottom: 63px; padding: 95px 0 0; }

.sec05:before { position: absolute; content: ""; left: 0; top: 0; bottom: 51px; right: 0; background: url(../images/bg03.jpg) no-repeat center center; background-size: cover; }

.sec05 .block01 { position: relative; padding: 95px 0 0; }

.sec05 .block01 .c-ttl01 { text-align: center; margin-bottom: 52px; }

.sec05 .list01 { position: relative; z-index: 29; display: block; }

.sec05 .list01 .item { background: #fff; box-shadow: 0 0 49px rgba(0, 0, 0, 0.1); border-radius: 0 0 15px 15px; }

.sec05 .list01 .c-ttl03 { text-align: center; margin-top: -44px; margin-bottom: 22px; position: relative; z-index: 9; }

.sec05 .list01 .img { border-bottom: 1px solid #3293c4; position: relative; }

.sec05 .list01 .box { position: relative; padding: 0 20px 44px; }

.sec05 .list01 .box:before { position: absolute; content: ""; left: 0; right: 0; top: -19px; width: 158px; height: 158px; background: #fff; border: 1px solid #3293c4; border-radius: 50%; margin: 0 auto; z-index: 2; }

.sec05 .list01 .box:after { position: absolute; content: ""; left: 0; right: 0; top: 44px; height: 170px; background: #fff; z-index: 4; }

.sec05 .list01 .desc01 { position: relative; z-index: 28; font-size: 16px; line-height: 1.875; letter-spacing: 0.05em; text-align: center; margin-bottom: 35px; }

.sec05 .list01 .sec05-btn { position: relative; z-index: 29; text-align: center; }

.sec05 .list01 .sec05-btn a { max-width: 255px; }

@media (min-width: 768px) { .sec05 .list01 { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .sec05 .list01 .item { width: 47.6%; margin: 0 4.8% 0 0; }
  .sec05 .list01 .item:nth-child(2n) { margin-right: 0; } }

@media (max-width: 767px) { .sec05 { margin-bottom: 35px; padding: 35px 0 15px; }
  .sec05:before { bottom: 0; }
  .sec05 .block01 { padding: 95px 0 0; }
  .sec05 .block01 .c-ttl01 { margin-bottom: 52px; }
  .sec05 .list01 .item { box-shadow: 0 0 29px rgba(0, 0, 0, 0.1); border-radius: 0 0 10px 10px; margin-bottom: 28px; }
  .sec05 .list01 .c-ttl03 { margin-top: -44px; margin-bottom: 18px; font-size: 18px; }
  .sec05 .list01 .c-ttl03 span { margin-top: 13px; padding-top: 48px; }
  .sec05 .list01 .c-ttl03 span:before { width: 25px; height: 30px; }
  .sec05 .list01 .box { padding: 0 10px 35px; }
  .sec05 .list01 .box:before { top: -3px; width: 115px; height: 115px; }
  .sec05 .list01 .box:after { top: 44px; height: 170px; }
  .sec05 .list01 .desc01 { font-size: 14px; line-height: 1.78571; margin-bottom: 25px; }
  .sec05 .sec05-btn a { max-width: 245px; } }

.sec06 { position: relative; margin-bottom: 121px; }

.sec06 .list01 { position: relative; z-index: 29; display: block; }

.sec06 .list01 a { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; -moz-justify-content: space-between; -ms-justify-content: space-between; justify-content: space-between; align-items: center; background: #cdeaff; border-radius: 15px; position: relative; text-decoration: none; padding: 48px 20px 48px; overflow: hidden; min-height: 185px; height: 100%; transition: All 0.4s ease; }

.sec06 .list01 a:before { position: absolute; content: ""; right: 0; top: 0; bottom: 0; width: 203px; background: url(../images/bg04.png) no-repeat right center; background-size: cover; transition: All 0.4s ease; }

@media only screen and (min-width: 1025px) { .sec06 .list01 a:hover { opacity: 0.7; }
  .sec06 .list01 a:hover .ttl:after { left: 10px; } }

.sec06 .list01 .ttl { font-size: 24px; position: relative; padding-bottom: 30px; }

.sec06 .list01 .ttl:after { position: absolute; content: ""; left: 0; bottom: 0; width: 42px; height: 7px; background: url(../common_img/arr02.png) no-repeat right center; background-size: auto 100%; transition: All 0.4s ease; }

.sec06 .list01 .pic { position: relative; z-index: 29; width: 35%; text-align: center; }

@media (min-width: 768px) { .sec06 .list01 { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .sec06 .list01 li { width: 32.2%; margin: 0 1.7% 0 0; }
  .sec06 .list01 li:nth-child(3n) { margin-right: 0; } }

@media (max-width: 767px) { .sec06 { margin-bottom: 25px; }
  .sec06 .list01 { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; justify-content: center; }
  .sec06 .list01 li { width: 49%; margin: 0 2% 8px 0; }
  .sec06 .list01 li:nth-child(2n) { margin-right: 0; }
  .sec06 .list01 a { border-radius: 10px; padding: 10px 8px 10px; min-height: 115px; } }

@media only screen and (max-width: 767px) and (max-width: 375px) { .sec06 .list01 a { min-height: 95px; } }

@media (max-width: 767px) { .sec06 .list01 a:before { width: 50%; background-size: auto 100%; background-position: left center; }
  .sec06 .list01 .ttl { font-size: 14px; padding-bottom: 13px; } }

@media only screen and (max-width: 767px) and (max-width: 420px) { .sec06 .list01 .ttl { font-size: 14px; } }

@media only screen and (max-width: 767px) and (max-width: 375px) { .sec06 .list01 .ttl { font-size: 14px; } }

@media (max-width: 767px) { .sec06 .list01 .ttl:after { width: 22px; height: 5px; }
  .sec06 .list01 .pic { width: 26%; } }

@media only screen and (max-width: 767px) and (max-width: 420px) { .sec06 .list01 .pic { width: 25%; } }

@media only screen and (max-width: 767px) and (max-width: 375px) { .sec06 .list01 .pic { width: 23%; } }

.sec07 { position: relative; padding: 0 0 73px; margin-bottom: 110px; }

.sec07:before { position: absolute; content: ""; left: 34.4%; top: 95px; bottom: 0; width: 75%; /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#10d8b1+0,43c4d8+100 */ background: #339ace; /* Old browsers */ background: -moz-linear-gradient(left, #339ace 0%, #3daefd 100%); /* FF3.6-15 */ background: -webkit-linear-gradient(left, #339ace 0%, #3daefd 100%); /* Chrome10-25,Safari5.1-6 */ background: linear-gradient(to right, #339ace 0%, #3daefd 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#339ace', endColorstr='#3daefd',GradientType=1 ); /* IE6-9 */ border-radius: 15px; max-width: 998px; }

@media (min-width: 768px) { .sec07 .sec07-bg { position: absolute; content: ""; right: 47.5%; top: 0; bottom: 73px; width: 51.5%; background: url(../images/img05.jpg) no-repeat center; background-size: cover; max-width: 990px; text-indent: -9999px; } }

.sec07 .block01 { width: 57.7%; border-radius: 15px; background: #fff; padding: 46px 54px 30px; position: relative; z-index: 29; text-align: left; float: right; max-width: 510px; box-shadow: 0 0 50px rgba(0, 0, 0, 0.1); }

.sec07 .block01 .c-ttl01 { text-align: left; margin-bottom: 32px; }

.sec07 .block01 .c-ttl01 span:before { top: -7px; }

.sec07 .block01 .c-ttl01 strong { font-size: 48px; font-weight: 400; }

.sec07 .block01 .desc01 { position: relative; font-size: 16px; line-height: 1.875; letter-spacing: 0.05em; font-weight: 400; margin-bottom: 26px; text-align: center; }

.sec07 .block01 .btn01 { text-align: center; }

@media (max-width: 767px) { .sec07 { padding: 0 0 25px; margin-bottom: 4px; }
  .sec07:before { display: none; }
  .sec07 .sec07-bg { margin: 0; }
  .sec07 .block01 { position: relative; border-radius: 10px; padding: 14px 10px 10px; float: none; width: auto; max-width: 100%; box-shadow: none; background: none; }
  .sec07 .block01:before { position: absolute; content: ""; /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#10d8b1+0,43c4d8+100 */ background: #339ace; /* Old browsers */ background: -moz-linear-gradient(left, #339ace 0%, #3daefd 100%); /* FF3.6-15 */ background: -webkit-linear-gradient(left, #339ace 0%, #3daefd 100%); /* Chrome10-25,Safari5.1-6 */ background: linear-gradient(to right, #339ace 0%, #3daefd 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#339ace', endColorstr='#3daefd',GradientType=1 ); /* IE6-9 */ border-radius: 0 0 10px 10px; left: 0px; right: 0px; top: 0; bottom: 80px; z-index: 2; }
  .sec07 .block01 .inner { background: #fff; border-radius: 10px; position: relative; z-index: 29; padding: 19px 22px 20px; box-shadow: 0 0 30px rgba(0, 0, 0, 0.1); }
  .sec07 .block01 .c-ttl01 { text-align: left; margin-bottom: 13px; font-size: 19px; }
  .sec07 .block01 .c-ttl01 span:before { top: -7px; }
  .sec07 .block01 .c-ttl01 strong { font-size: 19px; }
  .sec07 .block01 .desc01 { font-size: 14px; line-height: 1.71429; margin-bottom: 18px; text-align: left; } }

.sec08 { position: relative; margin-bottom: 71px; }

.sec08 .c-ttl01 { text-align: center; margin-bottom: 35px; }

.sec08 .list01 { position: relative; z-index: 29; display: block; }

.sec08 .list01 a { display: block; position: relative; text-decoration: none; height: 100%; transition: All 0.4s ease; }

@media only screen and (min-width: 1025px) { .sec08 .list01 a:hover { opacity: 0.7; }
  .sec08 .list01 a:hover .ttl:after { left: 10px; } }

.sec08 .list01 .ttl { font-size: 24px; position: absolute; left: 0; bottom: 0; padding-bottom: 30px; border-radius: 0 15px 0 0; background: #fff; z-index: 29; width: 75%; padding: 33px 10px 22px 25px; }

.sec08 .list01 .ttl:after { position: absolute; content: ""; left: 25px; bottom: -6px; width: 42px; height: 7px; background: url(../common_img/arr02.png) no-repeat center; background-size: 100%; transition: All 0.4s ease; }

.sec08 .list01 .pic { text-align: center; }

.sec08 .list01 .pic img { border-radius: 15px; }

@media (min-width: 768px) { .sec08 .list01 { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .sec08 .list01 li { width: 32.2%; margin: 0 1.7% 0 0; }
  .sec08 .list01 li:nth-child(3n) { margin-right: 0; } }

@media (max-width: 767px) { .sec08 { margin-bottom: 35px; }
  .sec08 .c-ttl01 { margin-bottom: 25px; } }

@media only screen and (max-width: 767px) and (max-width: 420px) { .sec08 .c-ttl01 { font-size: 22px; } }

@media (max-width: 767px) { .sec08 .list01 li { margin-bottom: 44px; }
  .sec08 .list01 .ttl { font-size: 18px; padding-bottom: 20px; border-radius: 0 10px 0 0; width: 75%; padding: 14px 10px 14px 12px; max-width: 224px; }
  .sec08 .list01 .ttl:after { left: 12px; bottom: 0; width: 30px; height: 9px; }
  .sec08 .list01 .pic img { border-radius: 8px; } }

@media (max-width: 639px) {
  .sec06 .list01 li { width: 80%; }
  .sec06 .list01 .ttl {font-size: 18px;}
  .sec08 .list01 .ttl { font-size: 18px; padding-bottom: 20px; border-radius: 0 10px 0 0; width: 58%; padding: 10px 10px 12px 12px; max-width: 224px; }
}

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