﻿html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
outline: 0;
font-size: 100%;
font-weight: normal;
vertical-align: baseline;
background: transparent
}
body {
line-height: 1
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
display: block
}
ol, ul {
list-style: none
}
blockquote, q {
quotes: none
}
blockquote:before, blockquote:after, q:before, q:after {
content: '';
content: none
}
a {
margin: 0;
padding: 0;
font-size: 100%;
vertical-align: top;
background: transparent
}
ins {
background-color: #ff9;
color: #000;
text-decoration: none
}
mark {
background-color: #ff9;
color: #000;
font-style: italic;
font-weight: bold
}
del {
text-decoration: line-through
}
abbr[title], dfn[title] {
border-bottom: 1px dotted;
cursor: help
}
table {
border-collapse: collapse;
border-spacing: 0
}
hr {
display: block;
height: 1px;
border: 0;
margin: 0;
padding: 0
}
input, select {
margin: 0;
padding: 0;
vertical-align: middle
}
textarea {
margin: 0;
padding: 0;
font-size: 100%;
vertical-align: middle
}
img {
vertical-align: bottom;
font-size: 0;
line-height: 0
}
span, small {
font-weight: inherit
}
strong {
font-weight: bold
}
address {
font-style: normal
}
sup {
vertical-align: text-top
}
em {
font-style: normal
}
html {
font-size: 62.5%
}
* {
box-sizing: border-box
}
body {
color: #222;
font-size: 1.6rem;
font-family: 'Montserrat', 'Noto Sans JP', sans-serif;
letter-spacing: .1em;
line-height: 1.75
}
@media screen and (max-width: 767px) {
body {
width: 100%;
-webkit-text-size-adjust: 100%
}
}
.preload * {
transition: none !important
}
strong {
font-weight: 700
}
img {
max-width: 100%;
height: auto
}
@media screen and (max-width: 767px) {
img {
width: 100%
}
}
sup, sub {
height: 0;
line-height: 1;
vertical-align: baseline;
position: relative
}
sup {
bottom: 1ex
}
sub {
top: .5ex
}
.pcNone {
display: none !important
}
@media screen and (max-width: 767px) {
.pcNone {
display: block !important
}
}
@media screen and (max-width: 767px) {
.spNone {
display: none !important
}
}
.color01 {
color: #f00
}
.right {
text-align: right !important
}
.center {
text-align: center !important
}
.centerSPleft {
text-align: center !important
}
@media screen and (max-width: 767px) {
.centerSPleft {
text-align: left !important
}
}
.mt56 {
margin-top: 56px
}
@media screen and (max-width: 767px) {
.mt56 {
margin-top: 10.6666666667vw
}
}
.mt96 {
margin-top: 96px
}
@media screen and (max-width: 767px) {
.mt96 {
margin-top: 24vw
}
}
a {
color: #222;
text-decoration: underline
}
a:hover, a:active {
text-decoration: none
}
.tel {
pointer-events: none;
text-decoration: none;
color: #222 !important
}
@media screen and (max-width: 767px) {
.tel {
pointer-events: all
}
}
.hover a img {
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
transition: opacity .3s
}
.hover a:hover img {
opacity: .6
}
@media screen and (max-width: 767px) {
.hover a:hover img {
opacity: 1.0
}
}
.imgOver01 > a {
display: block;
overflow: hidden
}
.imgOver01 > a > img {
transform: scale(1);
transition: transform .6s;
-webkit-backface-visibility: hidden;
backface-visibility: hidden
}
.imgOver01 > a:hover > img {
transition: transform .3s;
transform: scale(1.1)
}
@media screen and (max-width: 767px) {
.imgOver01 > a:hover > img {
-webkit-transform: scale(1);
transform: scale(1)
}
}
.btn01 {
margin-top: 80px;
width: 280px
}
.txt01 + .btn01 {
margin-top: 32px
}
@media screen and (max-width: 767px) {
.btn01 {
margin: 21.3333333333vw auto 0
}
}
.btn01 > a {
display: block;
position: relative;
padding: 10px 20px;
border: #fff solid 1px;
color: #fff;
line-height: 1.25;
text-decoration: none;
font-weight: 700;
text-align: center;
transition: all .3s
}
.btn01 > a::after {
position: absolute;
top: 50%;
transform: translateY(-50%);
right: 10px;
content: "￫";
font-size: 2.0rem;
font-weight: 400
}
.btn01 > a:hover {
background-color: #fff;
color: #222
}
@media screen and (max-width: 767px) {
.btn01 > a:hover {
background: none;
color: #fff
}
}
.btn01.type02 > a {
border-color: #222;
color: #222
}
.btn01.type02 > a:hover {
background-color: #222;
color: #fff
}
@media screen and (max-width: 767px) {
.btn01.type02 > a:hover {
background: none;
color: #222
}
}
.btn01.center {
margin-right: auto;
margin-left: auto
}
.btn02 {
margin-top: 80px;
width: 180px
}
@media screen and (max-width: 767px) {
.btn02 {
margin: 21.3333333333vw auto 0
}
}
.btn02 > a {
display: block;
position: relative;
padding: 20px;
background-color: #222;
color: #fff;
line-height: 1.25;
text-decoration: none;
font-size: 2.0rem;
font-weight: 700;
text-align: center;
transition: all .3s
}
.btn02 > a::after {
position: absolute;
top: 50%;
transform: translateY(-50%);
right: 10px;
content: "￫";
font-size: 2.0rem;
font-weight: 400
}
.btn02 > a:hover {
opacity: .6
}
@media screen and (max-width: 767px) {
.btn02 > a:hover {
opacity: 1.0
}
}
.btn03 {
margin-top: 80px
}
@media screen and (max-width: 935px) {
.btn03 {
margin-top: 21.3333333333vw;
text-align: center
}
}
.btn03.type02 {
margin-left: auto;
margin-right: auto;
text-align: center
}
.btn03 > a {
display: inline-block;
padding: 15px 48px;
border-radius: 24px;
background-color: #1b9e3e;
color: #fff;
font-weight: 700;
line-height: 1.0;
box-shadow: 0px 0px 24px 0px rgba(34, 34, 34, 0.2);
transition: all .3s;
text-decoration: none
}
@media screen and (max-width: 935px) {
.btn03 > a {
padding: 15px 12.8vw;
text-align: center
}
}
.btn03 > a:hover {
box-shadow: 0px 0px 16px 0px rgba(34, 34, 34, 0.4)
}
@media screen and (max-width: 767px) {
.btn03 > a:hover {
box-shadow: 0px 0px 24px 0px rgba(34, 34, 34, 0.2)
}
}
.btn04 {
margin: 80px auto 0;
text-align: center
}
@media screen and (max-width: 935px) {
.btn04 {
margin-top: 21.3333333333vw;
text-align: center
}
}
.btn04:first-child {
margin-top: 0
}
.btn04 > a {
display: inline-block;
padding: 20px 60px;
border-radius: 32px;
background-color: #fff;
color: #1b9e3e;
font-size: 2.4rem;
font-weight: 700;
line-height: 1.0;
letter-spacing: 0;
box-shadow: 0px 0px 24px 0px rgba(34, 34, 34, 0.2);
transition: all .3s;
text-decoration: none
}
@media screen and (max-width: 767px) {
.btn04 > a {
padding: 20px 15.4666666667vw;
font-size: 2.0rem
}
}
.btn04 > a:hover {
box-shadow: 0px 0px 16px 0px rgba(34, 34, 34, 0.4)
}
@media screen and (max-width: 767px) {
.btn04 > a:hover {
box-shadow: 0px 0px 24px 0px rgba(34, 34, 34, 0.2)
}
}
.header01 {
position: relative;
top: 0;
left: 0;
width: 100%;
height: 100px;
z-index: 1000
}
@media screen and (max-width: 935px) {
.header01 {
position: fixed;
height: 55px
}
.header01.active, .header01.active.fixed {
width: 100vw;
height: 100vh;
opacity: 1.0;
visibility: visible
}
}
.header01 > .inner01 {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100px;
background-color: #fff;
box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.15)
}
@media screen and (max-width: 935px) {
.header01 > .inner01 {
height: 55px
}
}
.header01 > .inner01 > .logo01 {
margin-left: 40px;
width: 189px
}
@media screen and (max-width: 1120px) {
.header01 > .inner01 > .logo01 {
margin-left: 20px;
width: 150px
}
}
@media screen and (max-width: 935px) {
.header01 > .inner01 > .logo01 {
margin-left: 4.2666666667vw;
width: 119px
}
}
.header02 {
position: relative;
top: 0;
left: 0;
width: 100%;
z-index: 1000
}
@media screen and (max-width: 935px) {
.header02 {
position: fixed;
min-height: inherit;
height: 55px
}
.header02.active, .header02.active.fixed {
width: 100vw;
height: 100vh;
opacity: 1.0;
visibility: visible
}
}
.header02 > .inner01 {
position: relative;
padding: 35px 20px 20px;
min-height: 190px;
background-color: #fff;
box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.15)
}
@media screen and (max-width: 935px) {
.header02 > .inner01 {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
min-height: inherit;
padding: 0;
height: 55px
}
}
.header02 > .inner01 > .logo01 {
margin: 0 auto;
text-align: center;
text-decoration: none;
line-height: 1.0
}
@media screen and (max-width: 935px) {
.header02 > .inner01 > .logo01 {
margin-left: 4.2666666667vw;
text-align: left
}
}
.header02 > .inner01 > .logo01 a {
color: #129055;
font-size: 4.2rem;
font-family: 'Noto Sans JP', sans-serif;
line-height: 1.0;
text-decoration: none
}
.header02 > .inner01 > .logo01 a img {
width: 189px
}
.header02 > .inner01 > .logo01 a .text01 {
margin-left: 15px;
vertical-align: bottom
}
@media screen and (max-width: 935px) {
.header02 > .inner01 > .logo01 a {
font-size: 2.6rem
}
.header02 > .inner01 > .logo01 a img {
width: 120px
}
.header02 > .inner01 > .logo01 a .text01 {
margin-left: 10px
}
}
.navButton01 {
display: none
}
@media screen and (max-width: 935px) {
.navButton01 {
display: block;
position: absolute;
z-index: 100000;
top: 0;
right: 0;
width: 58px;
height: 100%;
background: none;
border: none;
cursor: pointer
}
.navButton01 > span {
display: block;
position: absolute;
left: 50%;
margin-left: -13px;
width: 26px;
height: 2px;
background-color: #222;
text-indent: 100%;
white-space: nowrap
}
.navButton01 > .top {
top: 16px;
transition-duration: .1s, .1s;
transition-delay: .1s, 0;
transition-property: top, transform
}
.navButton01 > .bottom {
bottom: 16px;
transition-duration: .1s, .1s;
transition-delay: .1s, 0;
transition-property: bottom, transform
}
.navButton01 > .middle {
top: 26px;
transition: background .1s
}
.active .navButton01 > .middle {
background: none
}
.active .navButton01 > .top {
top: 26px;
transform: rotate(45deg);
transition-delay: .1s
}
.active .navButton01 > .bottom {
bottom: 27px;
transform: rotate(-45deg);
transition-delay: .1s
}
}
.navButton02 {
width: 180px;
height: 100%
}
@media screen and (max-width: 1120px) {
.navButton02 {
width: 160px
}
}
@media screen and (max-width: 935px) {
.navButton02 {
margin-top: 13.0666666667vw;
width: 100%;
height: auto
}
.navButton02 + .navButton02 {
margin-top: 6.4vw
}
}
.navButton02 > a {
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
position: relative;
padding: 10px 20px 12px;
width: 100%;
height: 100%;
color: #fff;
font-weight: 700;
text-decoration: none;
line-height: 1.0;
transition: opacity .3s
}
.navButton02 > a:hover {
opacity: .6
}
@media screen and (max-width: 767px) {
.navButton02 > a:hover {
opacity: 1.0
}
}
@media screen and (max-width: 935px) {
.navButton02 > a {
padding: 4.2666666667vw 3.2vw;
height: auto;
font-size: 1.6rem
}
}
.navButton02.type01 > a {
background-color: #1b9e3e
}
.navButton02.type02 > a {
background-color: #222
}
.navButton03 {
position: absolute;
top: 16px;
right: 40px
}
@media screen and (max-width: 935px) {
.navButton03 {
position: relative;
top: 0;
right: 0;
margin-top: 10.6666666667vw
}
}
.navButton03 > a {
position: relative;
padding-left: 30px;
text-decoration: none;
transition: color .3s;
line-height: 1.0
}
@media screen and (max-width: 935px) {
.navButton03 > a {
padding-left: 24px
}
}
.navButton03 > a:hover {
color: #1b9e3e
}
@media screen and (max-width: 767px) {
.navButton03 > a:hover {
color: #222
}
}
.navButton03 > a::before {
position: absolute;
top: 4px;
left: 0;
content: "";
width: 17px;
height: 16px;
border-left: #1b9e3e solid 2px;
border-bottom: #1b9e3e solid 2px;
box-sizing: border-box
}
.navButton03 > a::after {
position: absolute;
top: 0;
left: 4px;
content: "";
width: 16px;
height: 16px;
border: #1b9e3e solid 2px;
box-sizing: border-box
}
.globalNavArea01 {
display: flex;
flex-wrap: wrap;
align-items: center;
height: 100%
}
@media screen and (max-width: 935px) {
.globalNavArea01 {
display: block;
position: fixed;
z-index: 1000;
top: 0;
left: 0;
padding: 100px 100px 32px;
width: 100%;
height: 100vh;
background-color: rgba(255, 255, 255, 0.9);
overflow-y: auto;
opacity: 0;
visibility: hidden;
transition: opacity .4s
}
.active .globalNavArea01 {
opacity: 1.0;
visibility: visible
}
}
@media screen and (max-width: 767px) {
.globalNavArea01 {
padding: 24vw 12.8vw 6.4vw
}
}
@media screen and (max-width: 935px) {
.globalNavArea02 {
display: block;
position: fixed;
z-index: 1000;
top: 0;
left: 0;
padding: 100px 100px 32px;
width: 100%;
height: 100vh;
background-color: rgba(255, 255, 255, 0.9);
overflow-y: auto;
opacity: 0;
visibility: hidden;
transition: opacity .4s
}
.active .globalNavArea02 {
opacity: 1.0;
visibility: visible
}
}
@media screen and (max-width: 767px) {
.globalNavArea02 {
padding: 20vw 6.6666666667vw 20vw
}
}
.globalNav01 > ul {
display: flex;
flex-wrap: wrap;
margin-right: 60px
}
@media screen and (max-width: 1120px) {
.globalNav01 > ul {
margin-right: 30px
}
}
@media screen and (max-width: 935px) {
.globalNav01 > ul {
display: block
}
}
.globalNav01 > ul > li {
margin-left: 30px
}
@media screen and (max-width: 1120px) {
.globalNav01 > ul > li {
margin-left: 15px
}
}
@media screen and (max-width: 935px) {
.globalNav01 > ul > li {
margin-top: 10.6666666667vw;
margin-left: 0
}
.globalNav01 > ul > li:first-child {
margin-top: 0
}
}
.globalNav01 > ul > li > a {
color: #222;
font-size: 1.4rem;
font-weight: 700;
text-decoration: none;
transition: color .3s;
text-align: center;
}

.globalNav01 > ul > li > a span{
display: block;
font-size: 0.65em;
font-weight: 500;
color: #1b9e3e;
}

.globalNav01 > ul > li > a:hover {
color: #1b9e3e
}
@media screen and (max-width: 935px) {
.globalNav01 > ul > li > a {
display: block;
font-size: 2.0rem;
font-weight: 400
}
.globalNav01 > ul > li > a:hover {
color: #222
}
}
.globalNav02 > ul {
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
margin-top: 20px
}
@media screen and (max-width: 1120px) {
.globalNav02 > ul {
margin-right: 30px
}
}
@media screen and (max-width: 935px) {
.globalNav02 > ul {
margin-top: 0;
display: block
}
}
.globalNav02 > ul > li {
margin-top: 20px;
margin-left: 40px
}
.globalNav02 > ul > li:first-child {
margin-left: 0
}
@media screen and (max-width: 1120px) {
.globalNav02 > ul > li {
margin-left: 50px
}
}
@media screen and (max-width: 935px) {
.globalNav02 > ul > li {
margin-top: 10.6666666667vw;
margin-left: 0
}
.globalNav02 > ul > li:first-child {
margin-top: 0
}
}
.globalNav02 > ul > li > a {
color: #222;
font-size: 1.4rem;
font-weight: 700;
letter-spacing: 0;
text-decoration: none;
transition: color .3s
}
.globalNav02 > ul > li > a:hover {
color: #1b9e3e
}
@media screen and (max-width: 935px) {
.globalNav02 > ul > li > a {
display: block;
font-size: 2.0rem;
font-weight: 400
}
.globalNav02 > ul > li > a:hover {
color: #222
}
}
.globalNav02 > ul > li.button01 {
margin-left: 50px
}
@media screen and (max-width: 935px) {
.globalNav02 > ul > li.button01 {
margin-left: 0
}
}
.globalNav02 > ul > li.button01 > a {
display: block;
padding: 14px 40px;
border-radius: 24px;
color: #fff;
background-color: #1b9e3e;
line-height: 1.0;
letter-spacing: 0;
box-shadow: 0px 0px 24px 0px rgba(34, 34, 34, 0.2);
transition: all .3s
}
@media screen and (max-width: 935px) {
.globalNav02 > ul > li.button01 > a {
padding: 3.7333333333vw 2.6666666667vw;
border-radius: 42px;
text-align: center
}
}
.globalNav02 > ul > li.button01 > a:hover {
box-shadow: 0px 0px 16px 0px rgba(34, 34, 34, 0.4)
}
@media screen and (max-width: 767px) {
.globalNav02 > ul > li.button01 > a:hover {
box-shadow: 0px 0px 24px 0px rgba(34, 34, 34, 0.2)
}
}
.footer01 {
padding: 124px 32px 32px;
background-color: #222;
color: #fff
}
@media screen and (max-width: 767px) {
.footer01 {
padding: 32.2666666667vw 4.2666666667vw 8vw
}
}
.footer01 > .inner01 {
margin: 0 auto;
max-width: 1176px
}
.footer01 > .inner01 > .logo01 {
width: 235px
}
@media screen and (max-width: 767px) {
.footer01 > .inner01 > .logo01 {
margin: 0 auto
}
}
.footer01 > .inner01 > .copyright01 {
margin-top: 120px;
text-align: right
}
@media screen and (max-width: 767px) {
.footer01 > .inner01 > .copyright01 {
margin-top: 21.3333333333vw;
text-align: center
}
}
.footWrap01 {
margin-top: 32px;
margin-right: 180px;
width: 360px
}
@media screen and (max-width: 840px) {
.footWrap01 {
margin-right: 100px
}
}
@media screen and (max-width: 767px) {
.footWrap01 {
margin: 9.0666666667vw auto 0;
width: 90.6666666667vw
}
}
.footWrap01 > .text01 {
letter-spacing: 0
}
.footWrap01 > .text01 > a {
color: #fff;
pointer-events: none;
text-decoration: none
}
@media screen and (max-width: 767px) {
.footWrap01 > .text01 > a {
pointer-events: all
}
}
.footWrap01 > .btn01 {
margin-top: 60px
}
@media screen and (max-width: 767px) {
.footWrap01 > .btn01 {
margin: 16vw auto 0;
max-width: 280px
}
}
.footWrap02 {
display: flex;
flex-wrap: wrap;
margin-top: 32px;
width: calc(100% - 540px)
}
@media screen and (max-width: 840px) {
.footWrap02 {
width: calc(100% - 460px)
}
}
@media screen and (max-width: 767px) {
.footWrap02 {
margin-top: 21.3333333333vw;
width: 100%
}
}
.footList01 {
margin-right: 76px
}
.footList01:last-child {
margin-right: 0
}
.footList01 > li > a {
color: #fff;
line-height: 2.0;
text-decoration: none;
transition: opacity .3s
}
.footList01 > li > a:hover {
opacity: .6
}
@media screen and (max-width: 767px) {
.footList01 > li > a:hover {
opacity: 1.0
}
}
.wrap01 {
display: flex;
flex-wrap: wrap
}
.wrap01.bC {
justify-content: center
}
.wrap01.between {
justify-content: space-between
}
.wrap01.aC {
align-items: center
}
.wrap01.aEnd {
align-items: flex-end
}
.wrap01.reverse {
flex-direction: row-reverse
}
@media screen and (max-width: 767px) {
.contents01 {
padding-top: 55px
}
}
.mainArea01 {
position: relative
}
.mainArea01 > .image01 {
position: relative;
z-index: 150;
margin-top: -200px;
padding: 0 24px;
text-align: center
}
@media screen and (max-width: 767px) {
.mainArea01 > .image01 {
margin: -2.1333333333vw auto 0;
padding: 0;
width: 69.733%
}
}
.mainArea01 > .text01 {
margin: 140px 24px 0;
font-size: 1.92rem;
line-height: 2.0;
text-align: center
}
@media screen and (max-width: 767px) {
.mainArea01 > .text01 {
margin: 9.6vw auto 0;
font-size: 1.6rem;
line-height: 1.75
}
}
.mainArea02 {
position: relative;
padding-bottom: 120px
}
@media screen and (max-width: 767px) {
.mainArea02 {
padding-bottom: 32vw
}
}
.mainArea02 > .inner01 {
margin: 0 auto;
padding: 80px 32px 0;
max-width: 1240px
}
@media screen and (max-width: 767px) {
.mainArea02 > .inner01 {
padding: 21.3333333333vw 4.2666666667vw 0
}
}
.mainArea02 > .inner01 > .text01 {
font-size: 2.4rem
}
@media screen and (max-width: 767px) {
.mainArea02 > .inner01 > .text01 {
font-size: 1.6rem
}
}
.main01 img {
width: 100%
}
.block01 {
margin-top: 120px;
overflow: hidden
}
@media screen and (max-width: 767px) {
.block01 {
margin-top: 32vw
}
}
.block01 > .inner01 {
position: relative;
margin: 0 auto;
padding: 186px 32px 0;
max-width: 1240px;
min-height: 620px
}
@media screen and (max-width: 935px) {
.block01 > .inner01 {
padding: 15.89vw 0 0
}
}
@media screen and (max-width: 767px) {
.block01 > .inner01 {
padding: 42.6666666667vw 0 0;
min-height: inherit
}
}
.block01 > .inner01 > .image01 {
position: absolute;
top: 0;
left: -340px
}
@media screen and (max-width: 767px) {
.block01 > .inner01 > .image01 {
left: 0;
width: 100%
}
}
.block01 > .inner01 > .box01 {
position: relative;
z-index: 2;
margin-left: auto;
padding: 50px 10px 50px 56px;
width: 564px;
border-left: #23d152 solid 2px;
background-color: #fff
}
@media screen and (max-width: 935px) {
.block01 > .inner01 > .box01 {
padding-right: 0
}
}
@media screen and (max-width: 767px) {
.block01 > .inner01 > .box01 {
margin-left: auto;
padding: 8.5333333333vw 8.5333333333vw 0;
width: 91.4666666667vw;
border-left: none;
border-top: #23d152 solid 2px
}
}
.block01 > .inner01 > .box01 > .text01 {
color: #1b9e3e;
font-size: 5.6rem;
font-weight: 700;
line-height: 1.25;
letter-spacing: .1em
}
.block01 > .inner01 > .box01 > .text02 {
margin-top: 56px;
font-size: 2.4rem;
font-weight: 700;
line-height: 1.25
}
@media screen and (max-width: 767px) {
.block01 > .inner01 > .box01 > .text02 {
margin-top: 8.5333333333vw
}
}
.block01 > .inner01 > .box01 > .text03 {
margin-top: 56px
}
@media screen and (max-width: 767px) {
.block01 > .inner01 > .box01 > .text03 {
margin-top: 8.5333333333vw
}
}
.block02 {
position: relative;
margin-top: 80px
}
@media screen and (max-width: 767px) {
.block02 {
margin-top: 21.3333333333vw
}
}
.block02 > .image01 {
max-width: 720px
}
@media screen and (max-width: 767px) {
.block02 > .image01 {
margin: 0 -4.2666666667vw
}
}
.block02 > .box01 {
position: absolute;
top: 120px;
right: 0;
z-index: 2;
padding: 46px 0 46px 46px;
width: 612px;
border-left: #23d152 solid 2px;
background-color: #fff
}
@media screen and (max-width: 767px) {
.block02 > .box01 {
position: relative;
top: 0;
margin: -21.3333333333vw -4.2666666667vw 0 auto;
padding: 8.5333333333vw 4.2666666667vw 0 8.5333333333vw;
width: 91.4666666667vw;
border-left: none;
border-top: #23d152 solid 2px
}
}
.block02 > .box01 > .text01 {
font-size: 3.2rem;
line-height: 1.25;
letter-spacing: .1em
}
@media screen and (max-width: 767px) {
.block02 > .box01 > .text01 {
font-size: 2.4rem
}
}
.block02 > .box01 > .text02 {
margin-top: 24px
}
@media screen and (max-width: 767px) {
.block02 > .box01 > .text02 {
margin-top: 7.4666666667vw
}
}
.block03 {
position: relative;
margin-top: 160px
}
@media screen and (max-width: 767px) {
.block03 {
margin-top: 21.3333333333vw
}
}
.block03 > .image01 {
max-width: 720px
}
@media screen and (max-width: 767px) {
.block03 > .image01 {
margin: 0 -4.2666666667vw
}
}
.block03 > .box01 {
position: absolute;
top: -80px;
right: 0;
z-index: 2;
padding: 46px 0 46px 46px;
width: 612px;
border-left: #23d152 solid 2px;
background-color: #fff
}
@media screen and (max-width: 1070px) {
.block03 > .box01 {
position: relative;
top: 0;
margin: -110px -32px 0 auto;
width: calc(100% - 32px);
border-left: none;
border-top: #23d152 solid 2px
}
}
@media screen and (max-width: 767px) {
.block03 > .box01 {
position: relative;
top: 0;
margin: -21.3333333333vw -4.2666666667vw 0 auto;
padding: 8.5333333333vw 4.2666666667vw 0 8.5333333333vw;
width: 91.4666666667vw;
border-left: none;
border-top: #23d152 solid 2px
}
}
.block03 > .box01 > .text01 {
font-size: 2.4rem;
font-weight: 700
}
.block04 > .image01 {
width: 136px
}
.block04 > .text01 {
display: flex;
flex-wrap: wrap;
align-items: center;
margin-top: 16px
}
.block04 > .text01::before {
display: block;
content: "";
margin-right: 16px;
width: 80px;
height: 1px;
background-color: #1b9e3e
}
.section01 {
margin-top: 80px
}
@media screen and (max-width: 767px) {
.section01 {
margin-top: 21.3333333333vw
}
}
.section02 {
margin-top: 48px
}
.section02:first-child {
margin-top: 0
}
@media screen and (max-width: 767px) {
.section02 {
margin-top: 10.6666666667vw
}
}
.section03 {
padding-bottom: 120px
}
@media screen and (max-width: 767px) {
.section03 {
padding-bottom: 32vw
}
}
.section03 > .title01 {
width: 100%
}
.section03 > .title01 > img {
width: 100%
}
.section03 > .inner01 {
margin: 0 auto;
padding: 0 32px;
max-width: 1240px
}
@media screen and (max-width: 767px) {
.section03 > .inner01 {
padding: 0 4.2666666667vw
}
}
.section04 {
margin-top: 120px
}
.section04:first-child {
margin-top: 0
}
@media screen and (max-width: 767px) {
.section04 {
margin-top: 32vw
}
}
.section04 > .title01 {
text-align: center
}
.section04 > .title02 {
text-align: center
}
@media screen and (max-width: 767px) {
.section04 > .title02 {
margin: 0 auto;
width: 82.2666666667vw
}
}
.section04 > .text01 {
margin-top: 80px;
text-align: center
}
@media screen and (max-width: 767px) {
.section04 > .text01 {
margin: 21.3333333333vw auto 0;
width: 80.1333333333vw
}
}
.section05 {
margin-top: 60px
}
@media screen and (max-width: 767px) {
.section05 {
margin-top: 16vw
}
}
.section06 {
margin-top: 32px
}
@media screen and (max-width: 767px) {
.section06 {
margin-top: 8.5333333333vw
}
}
.section07 {
margin-top: 160px
}
@media screen and (max-width: 767px) {
.section07 {
margin-top: 32vw
}
}
.section07 > .title01 {
text-align: center
}
.section08 {
margin: 72px auto 0;
max-width: 800px
}

.section08 .list01 {
display: flex;
flex-wrap: wrap;
justify-content: center;
margin-top: 80px
}

.section08 .list01 > li {
display: flex;
flex-wrap: wrap;
justify-content: center;
align-content: center;
position: relative;
margin-left: 40px;
width: 240px;
height:240px;
border-radius: 50%;
background-color: rgba(255,255,255,0.8);
color: #1b9e3e;
text-align: center;
border: 2px dotted #1b9e3e;
}

.section08 .list01 > li::after {
position: absolute;
top: 50%;
left: -32px;
content: "×";
color: #222;
font-size: 2.4rem;
font-family: 'Noto Sans JP', sans-serif;
font-weight: 700;
transform: translateY(-50%)
}

@media screen and (max-width: 767px) {
.section08 {
margin-top: 21.3333333333vw
}
}
.section08 > .title01 {
font-size: 3.2rem;
line-height: 1.25;
text-align: center
}
@media screen and (max-width: 767px) {
.section08 > .title01 {
text-align: left
}
}
.section08 > .title01 > .font01 {
position: relative;
z-index: 2;
font-weight: 700
}
.section08 > .title01 > .font01::before {
position: absolute;
z-index: -1;
left: 0;
top: 50%;
content: "";
margin-top: -8px;
width: 100%;
height: 16px;
background-color: #f5ff00
}
.section08 > .text01 {
margin-top: 72px;
font-size: 2.0rem
}
@media screen and (max-width: 767px) {
.section08 > .text01 {
margin-top: 18.1333333333vw
}
}
.frameArea01 {
margin-top: 120px;
background: #262626 url("../../images/bg01.jpg") no-repeat top right/auto 100%
}
.frameArea01.type02 {
margin-top: 0;
background-image: none
}
@media screen and (max-width: 767px) {
.frameArea01.type02 > .inner01 {
padding-bottom: 16vw
}
}
@media screen and (max-width: 767px) {
.frameArea01 {
margin-top: 32vw;
background: #222 url("../../images/bg01_sp.png") no-repeat top center/100% auto
}
.frameArea01.type02 {
background-image: none
}
}
.frameArea01 > .inner01 {
position: relative;
margin: 0 auto;
padding: 120px 32px;
max-width: 1240px;
color: #fff
}
@media screen and (max-width: 767px) {
.frameArea01 > .inner01 {
padding: 32vw 4.2666666667vw 0
}
}
.frameArea01 > .inner01 > .box01 {
max-width: 564px
}
@media screen and (max-width: 767px) {
.frameArea01 > .inner01 > .box01 {
max-width: inherit;
width: 100%
}
}
.frameArea01 > .inner01 > .box01 > .text01 {
margin-top: 64px
}
@media screen and (max-width: 767px) {
.frameArea01 > .inner01 > .box01 > .text01 {
margin-top: 15.4666666667vw
}
}
.frameArea01 > .inner01 > .box02 {
width: 47.9%
}
@media screen and (max-width: 767px) {
.frameArea01 > .inner01 > .box02 {
width: 100%
}
}
.frameArea01 > .inner01 > .box02 > .text01 {
margin-top: 64px
}
@media screen and (max-width: 767px) {
.frameArea01 > .inner01 > .box02 > .text01 {
margin-top: 15.4666666667vw
}
}
.frameArea01 > .inner01 > .box02 > .image01 {
position: absolute;
top: 120px;
right: 32px;
width: 47.9%
}
@media screen and (max-width: 767px) {
.frameArea01 > .inner01 > .box02 > .image01 {
position: inherit;
top: 0;
right: 0;
margin-top: 8vw;
width: 100%
}
}
.frameArea02 {
background-color: #fff
}
.frameArea02.type02 {
background-color: #f0f0f0
}
.frameArea02.type03 {
background-color: #f0f0f0
}
.frameArea02.type03 > .inner01 {
padding-top: 80px;
padding-bottom: 80px
}
@media screen and (max-width: 767px) {
.frameArea02.type03 > .inner01 {
padding-top: 40px;
padding-bottom: 80px;
background-color: #1b9e3e;
color: #fff
}
}
@media screen and (max-width: 767px) {
.frameArea02.type04 > .inner01 {
padding-bottom: 0
}
}
.frameArea02 > .inner01 {
margin: 0 auto;
padding: 120px 32px;
max-width: 1240px
}
@media screen and (max-width: 767px) {
.frameArea02 > .inner01 {
padding: 32vw 4.2666666667vw
}
}
.frameArea03 {
padding-bottom: 120px;
background: #fff url("../../images/bg02.jpg") no-repeat bottom center/100% auto;
overflow: hidden
}
@media screen and (max-width: 1048px) {
.frameArea03 {
background: #fff url("../../images/bg02_sp.jpg") no-repeat bottom center/100% auto
}
}
@media screen and (max-width: 767px) {
.frameArea03 {
padding-bottom: 32vw
}
}
.frameArea03 > .imgBlock01 {
position: relative;
height: 640px
}
@media (min-width: 1920px) {
.frameArea03 > .imgBlock01 {
height: auto
}
}
@media screen and (max-width: 1048px) {
.frameArea03 > .imgBlock01 {
height: auto
}
}
.frameArea03 > .imgBlock01 > .image01 {
position: relative;
margin: 0 auto;
width: 1920px
}
@media (min-width: 1920px) {
.frameArea03 > .imgBlock01 > .image01 {
width: 100%
}
}
@media screen and (max-width: 1048px) {
.frameArea03 > .imgBlock01 > .image01 {
width: 100%
}
}
.frameArea03 > .imgBlock01 > .image01 img {
position: absolute;
top: 0;
left: 50%;
margin-left: -980px
}
@media (min-width: 1920px) {
.frameArea03 > .imgBlock01 > .image01 img {
position: relative;
left: 0;
margin-left: 0;
width: 100%
}
}
@media screen and (max-width: 1048px) {
.frameArea03 > .imgBlock01 > .image01 img {
position: relative;
left: 0;
margin-left: 0;
width: 100%
}
}
.frameArea03 > .imgBlock01 > .image02 {
position: absolute;
right: 608px;
bottom: -287px
}
@media screen and (max-width: 1580px) {
.frameArea03 > .imgBlock01 > .image02 {
right: 38.4vw;
bottom: -18.1vw;
width: 37.9%
}
}
@media screen and (max-width: 1048px) {
.frameArea03 > .imgBlock01 > .image02 {
right: 44.5333333333vw;
bottom: -22.9333333333vw;
width: 44vw
}
}
.frameArea03 > .imgBlock01 > .image03 {
position: absolute;
right: 0;
bottom: -287px
}
@media screen and (max-width: 1580px) {
.frameArea03 > .imgBlock01 > .image03 {
bottom: -18.1vw;
width: 37.9%
}
}
@media screen and (max-width: 1048px) {
.frameArea03 > .imgBlock01 > .image03 {
bottom: -22.9333333333vw;
width: 44vw
}
}
.frameArea03 > .inner01 {
position: relative;
margin: 408px 0 0 auto;
padding-left: 344px;
max-width: 1548px
}
@media screen and (max-width: 1580px) {
.frameArea03 > .inner01 {
margin-top: 25.8vw;
padding-left: 21.7vw;
width: 100%
}
}
@media screen and (max-width: 1048px) {
.frameArea03 > .inner01 {
margin-top: 30vw;
padding: 0 32px;
width: 100%
}
}
@media screen and (max-width: 767px) {
.frameArea03 > .inner01 {
margin-top: 43.7333333333vw;
padding: 0 4.2666666667vw
}
}
.frameArea03 > .inner01 > .title01 {
font-size: 16.0rem;
font-weight: 700;
line-height: 1.25;
letter-spacing: 0;
color: rgba(35, 209, 82, 0.5);
}
@media screen and (max-width: 1580px) {
.frameArea03 > .inner01 > .title01 {
font-size: 10.1vw
}
}
@media screen and (max-width: 1048px) {
.frameArea03 > .inner01 > .title01 {
font-size: 12.8vw;
text-align: center
}
}
.frameArea03 > .inner01 > .image01 {
position: absolute;
left: 5%;
top: 0;
width: 200px;
}
@media screen and (max-width: 1580px) {
.frameArea03 > .inner01 > .image01 {
left: 5vw;
width: 12vw;
top: -9vh;
}
}
@media screen and (max-width: 1048px) {
.frameArea03 > .inner01 > .image01 {
position: relative;
left: 0;
top: 0;
margin: 80px auto 0;
width: 158px
}
}
@media screen and (max-width: 767px) {
.frameArea03 > .inner01 > .image01 {
margin: 10.6666666667vw auto 0;
width: 21.0666666667vw
}
}
.frameArea03 > .inner01 > .text01 {
position: absolute;
font-size: 2.0rem;
line-height: 1.5;
}

.frameArea03 > .inner01 > .text01 {
top: 22vh;
left: 11vw;
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
font-family: 'Noto Serif JP', serif;
font-weight: 500;
font-size: 1.4em;
}

@media screen and (max-width: 1580px) {
.frameArea03 > .inner01 > .text01 {
top: 15vh;
left: 11vw;
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
font-family: 'Noto Serif JP', serif;
font-weight: 500;
font-size: 1.4em;
}
}
@media screen and (max-width: 1048px) {
.frameArea03 > .inner01 > .text01 {
position: relative;
left: 0;
top: 0;
margin: 110px auto 0;
width: auto;
font-size: 2.0rem
}
}
@media screen and (max-width: 767px) {
.frameArea03 > .inner01 > .text01 {
margin: 14.6666666667vw auto 0
}
}
.frameArea03 > .inner01 > .text02 {
margin-top: 64px
}
@media screen and (max-width: 1580px) {
.frameArea03 > .inner01 > .text02 {
margin-top: 4vw
}
}
@media screen and (max-width: 1048px) {
.frameArea03 > .inner01 > .text02 {
margin-top: 120px
}
}
@media screen and (max-width: 767px) {
.frameArea03 > .inner01 > .text02 {
margin-top: 21.3333333333vw
}
}
.frameArea03 > .inner01 > .imageList01 {
display: flex;
flex-wrap: wrap;
margin-top: 60px
}
@media screen and (max-width: 1580px) {
.frameArea03 > .inner01 > .imageList01 {
justify-content: flex-end;
margin-top: 3.7vw
}
}
@media screen and (max-width: 1048px) {
.frameArea03 > .inner01 > .imageList01 {
margin: 13.3333333333vw -4.2666666667vw 0 0
}
}
.frameArea03 > .inner01 > .imageList01 > li {
margin-left: 2px;
max-width: 400px
}
.frameArea03 > .inner01 > .imageList01 > li:first-child {
margin-left: 0
}
@media screen and (max-width: 1580px) {
.frameArea03 > .inner01 > .imageList01 > li {
margin-left: .1vw;
max-width: inherit;
width: 25.3vw
}
}
@media screen and (max-width: 1048px) {
.frameArea03 > .inner01 > .imageList01 > li {
margin-left: .5333333333vw;
width: 29.8666666667vw
}
}
.frameArea03 > .inner01 > .btn02 {
margin-top:40px;
}
@media screen and (max-width: 1580px) {
.frameArea03 > .inner01 > .btn02 {
left: 5.05vw;
top: 28.2vw;
width: 11.3vw
}
.frameArea03 > .inner01 > .btn02 > a {
padding: 1.2vw;
font-size: 1.2vw
}
}
@media screen and (max-width: 1048px) {
.frameArea03 > .inner01 > .btn02 {
position: relative;
left: 0;
top: 0;
margin: 160px auto 0;
width: 180px
}
.frameArea03 > .inner01 > .btn02 > a {
padding: 20px 4%;
font-size: 2.0rem
}
}
@media screen and (max-width: 767px) {
.frameArea03 > .inner01 > .btn02 {
margin: 21.3333333333vw auto 0
}
}
.frameArea04 {
position: relative;
z-index: 5;
margin-top: 50px;
padding: 30px;
background-color: #fff
}
@media screen and (max-width: 767px) {
.frameArea04 {
margin-top: 21.3333333333vw;
padding: 0
}
}
.frameArea05 {
background: url("../../recruit/images/bg01.jpg") no-repeat top center/cover
}
@media screen and (max-width: 935px) {
.frameArea05 {
background: url("../../recruit/images/bg01_sp.jpg") no-repeat top center/cover
}
}
.frameArea05 > .inner01 {
position: relative;
margin: 0 auto;
padding: 160px 32px 120px;
max-width: 1240px
}
@media screen and (max-width: 935px) {
.frameArea05 > .inner01 {
padding: 16vw 4.2666666667vw 25.3333333333vw
}
}
.frameArea05 > .inner01 > .title01 {
position: absolute;
top: -.7em;
left: 50%;
transform: translateX(-50%);
color: #1b9e3e;
font-size: 6.4rem;
font-weight: 700;
letter-spacing: .1em;
line-height: 1.0
}
@media screen and (max-width: 935px) {
.frameArea05 > .inner01 > .title01 {
top: -.6em;
left: 4.2666666667vw;
transform: translateX(0);
font-size: 6.8vw
}
}
@media screen and (max-width: 767px) {
.frameArea05 > .inner01 > .title01 {
font-size: 3.4rem
}
}
.frameArea05 > .inner01 > .image01 {
position: absolute;
top: 120px;
left: 66px
}
@media screen and (max-width: 1260px) {
.frameArea05 > .inner01 > .image01 {
width: 4.6vw
}
}
@media screen and (max-width: 935px) {
.frameArea05 > .inner01 > .image01 {
position: inherit;
top: 0;
left: 0;
width: 54.1vw
}
.frameArea05 > .inner01 > .image01 > img {
width: 100%
}
.frameArea05 > .inner01 > .image01 > img.spNone {
display: none !important
}
.frameArea05 > .inner01 > .image01 > img.pcNone {
display: block !important
}
}
@media screen and (max-width: 767px) {
.frameArea05 > .inner01 > .image01 {
width: 67.4666666667vw
}
}
.frameArea05 > .inner01 > .image02 {
margin-left: auto;
text-align: right
}
@media screen and (max-width: 1260px) {
.frameArea05 > .inner01 > .image02 {
width: 56.2vw
}
}
@media screen and (max-width: 935px) {
.frameArea05 > .inner01 > .image02 {
margin: 17.1vw -4.2666666667vw 0;
width: 97vw
}
.frameArea05 > .inner01 > .image02 > img {
width: 100%
}
.frameArea05 > .inner01 > .image02 > img.spNone {
display: none !important
}
.frameArea05 > .inner01 > .image02 > img.pcNone {
display: block !important
}
}
@media screen and (max-width: 767px) {
.frameArea05 > .inner01 > .image02 {
margin: 21.3333333333vw -4.2666666667vw 0;
width: auto
}
}
.frameArea05 > .inner01 > .text01 {
position: absolute;
top: 235px;
left: 200px;
font-size: 2.0rem
}
@media screen and (max-width: 1260px) {
.frameArea05 > .inner01 > .text01 {
top: 18.6vw;
left: 15.8vw
}
}
@media screen and (max-width: 935px) {
.frameArea05 > .inner01 > .text01 {
position: inherit;
top: 0;
left: 0;
margin-top: 120px
}
}
@media screen and (max-width: 767px) {
.frameArea05 > .inner01 > .text01 {
margin-top: 13.3333333333vw
}
}
.frameArea05 > .inner01 > .btn03 {
position: absolute;
top: 375px;
left: 200px;
margin-top: 0
}
@media screen and (max-width: 1260px) {
.frameArea05 > .inner01 > .btn03 {
top: 29.7vw;
left: 15.8vw
}
}
@media screen and (max-width: 935px) {
.frameArea05 > .inner01 > .btn03 {
position: inherit;
top: 0;
left: 0;
margin-top: 80px
}
}
@media screen and (max-width: 767px) {
.frameArea05 > .inner01 > .btn03 {
margin-top: 21.3333333333vw
}
}
.frameArea06 {
position: relative;
z-index: 5;
padding: 58px 32px;
background-color: #1b9e3e
}
@media screen and (max-width: 767px) {
.frameArea06 {
padding: 15.4666666667vw 4.2666666667vw
}
}
.frameArea07 {
position: relative;
padding: 40px 30px;
background-color: #f0f0f0
}

.frameArea07 .list02 {
margin-left: 0;
}

.frameArea07 .list02 li {
position: relative;
margin-top: 10px;
padding-left: 24px;
line-height: 1.25
}



.frameArea07 .list02 li::before {
position: absolute;
top: .3em;
left: 6px;
content: "";
width: 8px;
height: 8px;
border-radius: 50%;
background-color: #23d152
}

@media screen and (max-width: 767px) {
.frameArea07 {
padding: 6.4vw 4.2666666667vw
}
}
.frameArea07 > .text01 {
position: absolute;
top: -.7em;
left: 50%;
transform: translateX(-50%);
font-weight: 700
}
.frameArea08 {
position: relative;
margin-top: 32px;
padding: 32px 40px;
background-color: #1b9e3e
}
@media screen and (max-width: 767px) {
.frameArea08 {
margin-top: 8.5333333333vw;
padding: 6.4vw 7.4666666667vw
}
}
.frameArea08 > .text01 {
color: #fff;
font-size: 2.4rem;
font-weight: 700;
letter-spacing: 0
}
.frameArea09 {
position: relative;
margin-top: 80px;
padding: 46px 20px;
border: #1b9e3e solid 2px
}
@media screen and (max-width: 767px) {
.frameArea09 {
margin-top: 24vw;
padding: 12.5333333333vw 3.7333333333vw 3.7333333333vw
}
}
.frameArea09 > .logo01 {
position: absolute;
top: -34px;
left: 50%;
transform: translateX(-50%);
padding: 0 33px;
width: 260px;
background-color: #fff
}
@media screen and (max-width: 767px) {
.frameArea09 > .logo01 {
top: -25px;
padding: 0 36px;
width: 260px
}
}
.frameArea10 {
position: relative;
margin-top: 32px;
padding: 24px;
background-color: #fff
}
.frameArea10.type02 {
background-color: #f0f0f0
}
.frameArea10.type03 {
margin-top: 80px;
padding: 60px 60px 60px 135px;
background-color: #f0f0f0
}
@media screen and (max-width: 767px) {
.frameArea10.type03 {
margin-top: 21.3333333333vw;
padding: 24px
}
}
@media screen and (max-width: 767px) {
.frameArea10 {
margin-top: 8.5333333333vw
}
}
.frameArea10::before {
position: absolute;
top: 0;
left: 0;
content: "";
width: 24px;
height: 24px;
border: #23d152 solid;
border-width: 2px 0 0 2px
}
.frameArea10::after {
position: absolute;
bottom: 0;
right: 0;
content: "";
width: 24px;
height: 24px;
border: #23d152 solid;
border-width: 0 2px 2px 0
}
.frameArea10 > .title01 {
position: absolute;
top: 60px;
left: 60px;
writing-mode: vertical-rl
}
@media screen and (max-width: 767px) {
.frameArea10 > .title01 {
position: inherit;
top: 0;
left: 0;
writing-mode: horizontal-tb
}
}
.frameArea10 > .text01 {
font-size: 2.0rem;
font-weight: 700;
line-height: 1.25
}
@media screen and (max-width: 767px) {
.frameArea10 > .text02 {
margin-top: 4.8vw
}
}
.frameArea11 {
position: relative;
margin-top: 32px;
padding: 16px;
background-color: #f0f0f0
}
.frameArea11:first-child {
margin-top: 0
}
@media screen and (max-width: 767px) {
.frameArea11 {
margin-top: 8.5333333333vw;
padding: 4.2666666667vw 4.2666666667vw 6.4vw
}
}
.wrapper01 {
margin: 80px auto 0;
max-width: 800px
}
.wrapper01:first-child {
margin-top: 0
}
@media screen and (max-width: 767px) {
.wrapper01 {
margin-top: 21.3333333333vw
}
}
.slideArea01 {
display: flex;
flex-wrap: wrap;
margin-top: 48px
}
@media screen and (max-width: 767px) {
.slideArea01 {
margin-left: -4.2666666667vw;
margin-right: -4.2666666667vw
}
}
.slideArea01 .item01 {
position: relative;
margin: 32px 0 0 1.5%;
width: 32.3%
}
.slideArea01 .item01:nth-child(3n+1) {
margin-left: 0
}
@media screen and (max-width: 767px) {
.slideArea01 .item01 {
margin: 0 0 0 16px
}
.slideArea01 .item01:nth-child(3n+1) {
margin-left: 16px
}
}
.slideArea01 .item01 > .text01 {
position: absolute;
bottom: -10px;
right: 0;
padding: 10px 0 0 20px;
width: 183px;
border-top: #23d152 solid 2px;
background-color: #fff;
line-height: 1.25;
letter-spacing: 0
}
.slideArea01 .slick-list {
padding-bottom: 20px !important
}
.slideArea02 {
display: flex;
flex-wrap: wrap;
margin-top: 48px
}
@media screen and (max-width: 767px) {
.slideArea02 {
margin-left: -4.2666666667vw;
margin-right: -4.2666666667vw
}
}
.slideArea02 .item01 {
position: relative;
margin: 32px 0 0 2.7%;
width: 22.9%
}
.slideArea02 .item01:nth-child(4n+1) {
margin-left: 0
}
@media screen and (max-width: 767px) {
.slideArea02 .item01 {
margin: 0 0 0 16px
}
.slideArea02 .item01:nth-child(4n+1) {
margin-left: 16px
}
}
.slideArea02 .item01 > .text01 {
margin-top: 16px;
font-size: 2.0rem;
font-weight: 700;
line-height: 1.25
}
@media screen and (max-width: 767px) {
.slideArea02 .item01 > .text01 {
margin-top: 4.2666666667vw
}
}
.slideArea02 .item01 > .text01 > a {
text-decoration: none;
transition: color .3s
}
.slideArea02 .item01 > .text01 > a:hover {
color: #1b9e3e
}
@media screen and (max-width: 767px) {
.slideArea02 .item01 > .text01 > a:hover {
color: #222
}
}
.slideArea02 .item01 > .text02 {
margin-top: 16px
}
@media screen and (max-width: 767px) {
.slideArea02 .item01 > .text02 {
margin-top: 4.2666666667vw
}
}
.slideArea02 .item01 > .text03 {
margin-top: 24px;
color: #1b9e3e;
font-size: 1.4rem
}
@media screen and (max-width: 767px) {
.slideArea02 .item01 > .text03 {
margin-top: 6.4vw
}
}
.column01 {
position: relative;
width: 100%;
min-height: 320px
}
@media screen and (max-width: 767px) {
.column01 {
width: 100%
}
}
.column01.type01 {
margin-top: 80px
}
@media screen and (max-width: 767px) {
.column01.type01 {
margin-top: 21.3333333333vw
}
}
.column01 > .heading01 {
width: 47.9%
}
@media screen and (max-width: 767px) {
.column01 > .heading01 {
width: 100%
}
}
.column01 > .text01 {
margin-top: 64px;
width: 47.9%
}
@media screen and (max-width: 767px) {
.column01 > .text01 {
margin-top: 15.4666666667vw;
width: 100%
}
}
.column01 > .text02 {
margin-top: 34px;
width: 47.9%
}
@media screen and (max-width: 767px) {
.column01 > .text02 {
margin-top: 8.5333333333vw;
width: 100%
}
}
.column01 > .catchTxt03 {
width: 47.9%
}
@media screen and (max-width: 767px) {
.column01 > .catchTxt03 {
width: 100%
}
}
.column01 > .image01 {
position: absolute;
top: 0;
right: 0;
width: 47.9%
}
@media screen and (max-width: 767px) {
.column01 > .image01 {
position: inherit;
top: 0;
right: 0;
margin-top: 8vw;
width: 100%
}
}
.column01.reverse > .heading01 {
margin-left: auto
}
.column01.reverse > .text01 {
margin-left: auto
}
.column01.reverse > .text02 {
margin-left: auto
}
.column01.reverse > .catchTxt03 {
margin-left: auto
}
.column01.reverse > .btn03 {
margin-left: auto;
width: 47.9%
}
@media screen and (max-width: 767px) {
.column01.reverse > .btn03 {
width: 100%
}
}
.column01.reverse > .image01 {
left: 0;
right: auto
}
.col01 {
margin-top: 24px;
width: 47.9%
}
@media screen and (max-width: 767px) {
.col01 {
margin-top: 8vw;
width: 100%
}
}
.col01.type01 {
margin-top: 80px
}
@media screen and (max-width: 767px) {
.col01.type01 {
margin-top: 10.6666666667vw
}
}
.col01.type02 {
margin-top: 0
}
@media screen and (max-width: 767px) {
.col01.type02 {
margin-top: 8vw
}
.col01.type02:first-child {
margin-top: 0
}
}
.col01.type03 {
margin-top: 0
}
@media screen and (max-width: 767px) {
.col01.type03 {
margin-top: 21.3333333333vw
}
.col01.type03:first-child {
margin-top: 0
}
}
.col01 > .image01 {
margin-top: 28px
}
@media screen and (max-width: 767px) {
.col01 > .image01 {
margin-top: 4.2666666667vw
}
}
.col01 > .image01:first-child {
margin-top: 0
}
.col01 > .image02 {
margin-top: 96px
}
@media screen and (max-width: 767px) {
.col01 > .image02 {
margin-top: 0
}
}
.col01 > .text01 {
font-size: 3.2rem;
line-height: 1.25
}
@media screen and (max-width: 767px) {
.col01 > .text01 {
font-size: 2.4rem
}
}
.col02 {
width: 41.9%
}
@media screen and (max-width: 767px) {
.col02 {
width: 100%
}
}
.col03 {
padding-top: 28px;
width: 53.7%
}
@media screen and (max-width: 767px) {
.col03 {
width: 100%
}
}
@media screen and (max-width: 935px) {
.col03 > .btn03 {
text-align: left;
margin-top: 80px
}
.col03 > .btn03 > a {
padding: 15px 48px
}
}
@media screen and (max-width: 767px) {
.col03 > .btn03 {
margin-top: 6.4vw;
text-align: center
}
.col03 > .btn03 > a {
padding: 15px 12.8vw
}
}
.heading01 {
font-size: 1.6rem;
line-height: 1.25;
letter-spacing: .1em;
position: relative;
}

.heading01:before {
content: '';
border-left: 7px double #1b9e3e;
margin-right: 0.5rem;
}

.heading01 > .font01 {
display: block;
color: #FFF;
font-size: 8rem;
font-weight: 700;
}
@media screen and (max-width: 767px) {
.heading01 {
font-size: 1.2rem;
text-align: center;
position: relative;
}
.heading01:before {
content: '';
border-left: 7px double #1b9e3e;
margin-right: 0.5rem;
}

.heading01 > .font01 {
display: block;
color: #FFF;
font-size: 4rem;
font-weight: 700;
letter-spacing: .1em
}
}

.heading02 {
font-size: 1.6rem;
line-height: 1.25;
letter-spacing: .1em;
position: relative;
text-align: center
}

.heading02:before {
content: '';
border-left: 7px double #1b9e3e;
margin-right: 0.5rem;
}

.heading02 > .font01 {
display: block;
color: #1b9e3e;
font-size: 8rem;
font-weight: 700;
}


.heading02_txt {
text-align: center;
font-size:1em;
line-height: 1.8;
margin:30px auto;
}

.heading02_txt span{
font-size: 1.2em;
font-weight: 700;
color: #1b9e3e;
display: block;
}

@media screen and (max-width: 767px) {
.heading02 {
font-size: 1.2rem;
text-align: center;
position: relative;
}
.heading02::before {
content: '';
border-left: 7px double #1b9e3e;
margin-right: 0.5rem;
}
.heading02 > .font01 {
display: block;
color: #1b9e3e;
font-size: 4rem;
font-weight: 700;
letter-spacing: .1em;
}

.heading02_txt {
text-align: center;
font-size:0.9em;
line-height: 1.8;
margin:30px auto 0;
}

.heading02_txt span{
font-size: 1.1em;
font-weight: 700;
color: #1b9e3e;
display: block;
}

}

.heading03 {
font-size: 2.4rem;
font-weight: 700;
line-height: 1.25;
display: flex;
align-items: center;
}
.heading03 > .num01 {
margin-right: 10px;
color: #1b9e3e;
font-size: 8rem;
font-weight: 1;
position: relative;
}

.heading03 > .num01::before {
content: "";
display: block;
background: url("../../images/top_title.svg") no-repeat center right/100%;
width: 29px;
height: 30px;
position: absolute;
top: 0;
right: calc(100% + 5px);
}


@media screen and (max-width: 767px) {
.heading03 {
font-size: 1.8rem;
font-weight: 700;
line-height: 1.25;
display: flex;
align-items: center;
}
.heading03 > .num01 {
margin-right: 3vw;
font-size: 5rem
}
.heading03 > .num01::before {
content: "";
display: block;
background: url("../../images/top_title.svg") no-repeat center right/100%;
width: 29px;
height: 30px;
position: absolute;
top: 0;
right: calc(100% + 1px);
}

}
.heading04 {
display: table;
position: relative;
margin: 0 auto;
padding: 0 50px;
font-size: 3.2rem;
font-weight: 700;
line-height: 1.25;
letter-spacing: .1em
}
@media screen and (max-width: 767px) {
.heading04 {
padding: 0;
width: 100%;
text-align: center
}
}
.heading04 > .font01 {
font-size: 2.0rem;
font-weight: 400
}
.heading04 > .font02 {
margin-left: 8px;
font-size: 2.4rem
}
.heading04::before {
position: absolute;
top: 0;
left: 0;
content: "";
width: 32px;
height: 2px;
background-color: #23d152;
transform: rotate(-45deg)
}
@media screen and (max-width: 767px) {
.heading04::before {
top: -8px;
left: -8px
}
}
.heading04::after {
position: absolute;
bottom: 0;
right: 0;
content: "";
width: 32px;
height: 2px;
background-color: #23d152;
transform: rotate(-45deg)
}
@media screen and (max-width: 767px) {
.heading04::after {
bottom: -8px;
right: -8px
}
}
.heading05 {
position: relative;
padding-bottom: 20px;
font-size: 2.4rem;
font-weight: 700;
line-height: 1.25
}
.heading05::before {
position: absolute;
bottom: 0;
left: 0;
content: "";
width: 64px;
height: 2px;
background-color: #1b9e3e
}
.heading06 {
font-size: 2.0rem;
font-weight: 700;
line-height: 1.25
}
.heading07 {
position: relative;
padding-left: 40px;
padding-bottom: 16px;
border-bottom: #1b9e3e solid 1px;
font-size: 2.4rem;
line-height: 1.25
}
.heading07 > .text01 {
position: absolute;
top: -.1em;
left: 0;
width: 40px;
color: #1b9e3e;
font-size: 3.2rem;
font-weight: 700;
line-height: 1.0
}

.heading08 {
position: relative;
padding-bottom: 32px;
font-size: 3.2rem;
font-weight: 700;
line-height: 1.25;
text-align: center
}
.heading08::before {
position: absolute;
bottom: 0;
left: 50%;
content: "";
margin-left: -32px;
width: 64px;
height: 4px;
background-color: #1b9e3e
}
.heading09 {
position: relative;
padding-bottom: 24px;
font-size: 3.2rem;
line-height: 1.25;
text-align: center
}
.heading09::before {
position: absolute;
bottom: 0;
left: 50%;
content: "";
transform: rotate(-45deg);
margin-left: -12px;
width: 24px;
height: 2px;
background-color: #23d152
}
.heading10 {
font-size: 3.2rem;
line-height: 1.25;
text-align: center
}
@media screen and (max-width: 767px) {
.heading10 {
text-align: left
}
.heading10.type02 {
text-align: center
}
}
.heading10 > .font01 {
position: relative;
z-index: 2;
font-weight: 700
}
.heading10 > .font01::before {
position: absolute;
z-index: -1;
left: 0;
top: 50%;
content: "";
margin-top: -8px;
width: 100%;
height: 16px;
background-color: #f5ff00
}
.heading11 {
position: relative;
padding-bottom: 10px;
border-bottom: #ccc solid 2px;
font-size: 2.4rem;
font-weight: 700;
line-height: 1.25
}
.heading11::after {
position: absolute;
bottom: -2px;
left: 0;
content: "";
width: 40px;
height: 2px;
background-color: #1b9e3e
}
.hgroup01 {
padding: 0 32px;
width: 100%;
height: 320px;
background-color: #f0f0f0
}
@media screen and (max-width: 767px) {
.hgroup01 {
padding: 0 2.1333333333vw;
height: 160px
}
}
.hgroup01 > .inner01 {
display: flex;
flex-wrap: wrap;
align-content: center;
position: relative;
margin: 0 auto;
max-width: 1176px;
height: 100%
}
@media screen and (max-width: 767px) {
.hgroup01 > .inner01 {
justify-content: center;
text-align: center
}
}
.hgroup01 > .inner01::after {
position: absolute;
bottom: 0;
left: 0;
content: "";
width: 64px;
height: 6px;
background-color: #1b9e3e
}
@media screen and (max-width: 767px) {
.hgroup01 > .inner01::after {
left: 50%;
margin-left: -32px
}
}
.hgroup01 > .inner01 > .title01 {
width: 100%;
font-size: 3.84rem;
line-height: 1.0
}
@media screen and (max-width: 767px) {
.hgroup01 > .inner01 > .title01 {
font-size: 3.2rem
}
}
.hgroup01 > .inner01 > .text01 {
margin-top: 24px;
width: 100%;
color: #1b9e3e;
font-size: 1.28rem;
font-weight: 700
}
@media screen and (max-width: 767px) {
.hgroup01 > .inner01 > .text01 {
margin-top: 6.6666666667vw
}
}
.hgroup02 > .title01 {
font-size: 4.0rem;
line-height: 1.25;
text-align: center
}
@media screen and (max-width: 767px) {
.hgroup02 > .title01 {
font-size: 3.2rem
}
}
.hgroup02 > .text01 {
display: table;
position: relative;
margin: 24px auto 0;
padding: 10px 0;
color: #1b9e3e;
font-size: 1.6rem;
font-weight: 700;
line-height: 1.0;
text-align: center
}
@media screen and (max-width: 767px) {
.hgroup02 > .text01 {
margin-top: 8vw
}
}
.hgroup02 > .text01::before {
position: absolute;
top: 0;
left: 8px;
content: "";
width: 100%;
height: 1px;
background-color: #1b9e3e
}
.hgroup02 > .text01::after {
position: absolute;
bottom: 0;
left: -8px;
content: "";
width: 100%;
height: 1px;
background-color: #1b9e3e
}
.hgroup03 {
padding: 0 32px;
width: 100%;
height: 320px;
background-color: #f0f0f0
}
@media screen and (max-width: 767px) {
.hgroup03 {
padding: 0 2.1333333333vw;
height: 180px
}
}
.hgroup03 > .inner01 {
display: flex;
flex-wrap: wrap;
align-content: center;
position: relative;
margin: 0 auto;
max-width: 1176px;
height: 100%
}
.hgroup03 > .inner01 > .title01 {
margin-top: 32px;
width: 100%;
font-size: 4.8rem;
line-height: 1.25;
text-align: center
}
.hgroup03 > .inner01 > .title01:first-child {
margin-top: 0
}
@media screen and (max-width: 767px) {
.hgroup03 > .inner01 > .title01 {
margin-top: 4.2666666667vw;
font-size: 3.2rem
}
}
.hgroup03 > .inner01 > .text01 {
width: 100%;
font-size: 2.0rem;
font-weight: 700;
text-align: center
}
@media screen and (max-width: 767px) {
.hgroup03 > .inner01 > .text01 {
font-size: 1.6rem
}
}
.hgroup03 > .inner01 > .text01 > .font01 {
display: inline-block;
position: relative;
margin-right: 16px;
color: #1b9e3e;
font-size: 2.4rem
}
@media screen and (max-width: 767px) {
.hgroup03 > .inner01 > .text01 > .font01 {
margin-right: 8px;
font-size: 2.0rem
}
}
.hgroup03 > .inner01 > .text01 > .font01::before {
position: absolute;
top: 0;
left: 10px;
content: "";
width: 100%;
height: 2px;
background-color: #1b9e3e
}
.hgroup03 > .inner01 > .text01 > .font01::after {
position: absolute;
bottom: 0;
left: -10px;
content: "";
width: 100%;
height: 2px;
background-color: #1b9e3e
}
.hgroup03 > .inner01 > .text02 {
width: 100%;
color: #1b9e3e;
font-size: 2.4rem;
font-weight: 700;
text-align: center
}
.hgroup03 > .inner01 > .text02 + .title01 {
margin-top: 20px
}
@media screen and (max-width: 767px) {
.hgroup03 > .inner01 > .text02 + .title01 {
margin-top: 4.2666666667vw
}
}
@media screen and (max-width: 767px) {
.hgroup03 > .inner01 > .text02 {
font-size: 1.6rem
}
}
.hgroup04 > .title01 {
margin-top: 10px;
height: 23px
}
.hgroup04 > .title01 img {
width: auto;
height: 100%
}
.hgroup04 > .text01 {
display: flex;
flex-wrap: wrap;
align-items: center
}
.hgroup04 > .text01::before {
display: block;
content: "";
margin-right: 16px;
width: 80px;
height: 1px;
background-color: #1b9e3e
}
.catchTxt01 {
margin-top: 80px;
font-size: 3.2rem;
font-weight: 700;
line-height: 1.25
}
.catchTxt01:first-child {
margin-top: 0
}
@media screen and (max-width: 767px) {
.catchTxt01 {
text-align: center
}
}
.catchTxt01 > .font01 {
font-size: 2.0rem;
font-weight: 400
}
.catchTxt02 {
margin-top: 72px;
text-align: center
}
@media screen and (max-width: 767px) {
.catchTxt02 {
margin-top: 20.2666666667vw
}
}
.catchTxt03 {
font-size: 2.4rem;
font-weight: 700;
line-height: 1.25
}
.catchTxt04 {
font-size: 3.2rem;
line-height: 1.25;
text-align: center
}
.txt01 {
margin-top: 32px
}
@media screen and (max-width: 767px) {
.txt01 {
margin-top: 9.6vw
}
}
.txt01:first-child {
margin-top: 0
}
.heading04 + .txt01, .heading09 + .txt01 {
margin-top: 80px
}
@media screen and (max-width: 767px) {
.heading04 + .txt01, .heading09 + .txt01 {
margin-top: 18.6666666667vw
}
}
.heading06 + .txt01 {
margin-top: 24px
}
@media screen and (max-width: 767px) {
.heading06 + .txt01 {
margin-top: 6.4vw
}
}
.heading07 + .txt01 {
margin-top: 16px
}
@media screen and (max-width: 767px) {
.heading07 + .txt01 {
margin-top: 4.2666666667vw
}
}
.block03 + .txt01 {
margin-top: 58px
}
@media screen and (max-width: 767px) {
.block03 + .txt01 {
margin-top: 18.6666666667vw
}
}
.caption01 {
margin-top: 16px;
line-height: 1.25;
letter-spacing: 0
}
@media screen and (max-width: 767px) {
.caption01 {
margin-top: 4.2666666667vw
}
}
.img01 {
margin-top: 80px
}
.img01:first-child {
margin-top: 0
}
@media screen and (max-width: 767px) {
.img01 {
margin-top: 21.3333333333vw
}
}
.img02 {
margin: -80px -32px 0
}
@media screen and (max-width: 767px) {
.img02 {
margin: 8vw -4.2666666667vw 0
}
}
.breadcrumb01 {
padding: 16px 32px;
margin: 0 auto;
max-width: 1240px
}
@media screen and (max-width: 767px) {
.breadcrumb01 {
padding: 2.1333333333vw 4.2666666667vw
}
}
.breadcrumb01 > .breadcrumbList01 {
display: flex;
flex-wrap: wrap;
justify-content: flex-end
}
.breadcrumb01 > .breadcrumbList01 > li {
position: relative;
margin-left: 16px;
padding-left: 22px;
font-size: 1.28rem;
line-height: 1.25
}
@media screen and (max-width: 767px) {
.breadcrumb01 > .breadcrumbList01 > li {
margin-left: 6px;
padding-left: 16px;
font-size: 1.0rem
}
}
.breadcrumb01 > .breadcrumbList01 > li::before {
position: absolute;
top: 50%;
left: 0;
content: "";
margin-top: -1px;
width: 8px;
height: 1px;
background-color: #23d152
}
.breadcrumb01 > .breadcrumbList01 > li:first-child {
margin-left: 0;
padding-left: 0
}
.breadcrumb01 > .breadcrumbList01 > li:first-child::before {
content: normal
}
.breadcrumb01 > .breadcrumbList01 > li > a {
text-decoration: none;
transition: color .3s
}
.breadcrumb01 > .breadcrumbList01 > li > a:hover {
color: #1b9e3e
}
@media screen and (max-width: 767px) {
.breadcrumb01 > .breadcrumbList01 > li > a:hover {
color: #222
}
}
.localList01 {
margin-right: 72px
}
@media screen and (max-width: 1240px) {
.localList01 {
margin-right: 5.8vw
}
}
@media screen and (max-width: 880px) {
.localList01 {
margin-top: 32px;
margin-right: 0;
width: 100%
}
.localList01:first-child {
margin-top: 0
}
}
.localList01:last-child {
margin-right: 0
}
.localList01 > li {
margin-top: 32px;
line-height: 1.0
}
.localList01 > li:first-child {
margin-top: 0
}
.localList01 > li > a {
position: relative;
padding-left: 24px;
font-size: 2.0rem;
text-decoration: none;
line-height: 1.25;
transition: color .3s
}
.localList01 > li > a:hover {
color: #1b9e3e
}
@media screen and (max-width: 767px) {
.localList01 > li > a:hover {
color: #222
}
}
.localList01 > li > a::before {
position: absolute;
top: .3em;
left: 6px;
content: "";
width: 8px;
height: 8px;
border-radius: 50%;
background-color: #23d152
}
.childList01 {
margin-left: 24px
}
.childList01 > li {
margin-top: 24px;
line-height: 1.0
}
.childList01 > li > a {
position: relative;
padding-left: 20px;
text-decoration: none;
line-height: 1.25;
transition: color .3s
}
.childList01 > li > a:hover {
color: #1b9e3e
}
@media screen and (max-width: 767px) {
.childList01 > li > a:hover {
color: #222
}
}
.childList01 > li > a::before {
position: absolute;
top: 50%;
left: 0;
content: "";
width: 8px;
height: 1px;
background-color: #23d152
}
.list01 {
display: flex;
flex-wrap: wrap;
justify-content: center;
margin-top: 80px
}
.list01:first-child {
margin-top: 0
}
@media screen and (max-width: 767px) {
.list01 {
margin: 21.3333333333vw -4.2666666667vw 0;
padding: 10.6666666667vw 0;
background-color: #1b9e3e
}
}
.list01 > li {
display: flex;
flex-wrap: wrap;
justify-content: center;
align-content: center;
position: relative;
margin-left: 40px;
width: 300px;
height: 300px;
border-radius: 50%;
background-color: rgba(255,255,255,0.8);
color: #1b9e3e;
text-align: center;
border: 2px dotted #1b9e3e;
}
.list01 > li::after {
position: absolute;
top: 50%;
left: -32px;
content: "×";
color: #222;
font-size: 2.4rem;
font-family: 'Noto Sans JP', sans-serif;
font-weight: 700;
transform: translateY(-50%)
}
@media screen and (max-width: 767px) {
.list01 > li {
position: relative;
margin-left: 40px;
width: 240px;
height: 240px;
background-color:rgba(0,0,0,0);
color: #FFF;
text-align: center;
border: none;
}
.list01 > li::after {
color: #fff
}
}
.list01 > li:first-child {
margin-left: 0
}
.list01 > li:first-child::after {
content: normal
}
@media screen and (max-width: 900px) {
.list01 > li {
width: 200px;
height: 200px
}
}
@media screen and (max-width: 767px) {
.list01 > li {
display: block;
margin: 16vw 0 0;
width: 100%;
height: auto;
border-radius: 0
}
.list01 > li::after {
top: -13.3333333333vw;
left: 50%;
transform: translate(-50%, 0)
}
.list01 > li:first-child {
margin-top: 0
}
}
.list01 > li > .text01 {
font-size: 2.6rem;
font-weight: 700;
line-height: 1.25;
font-family: 'Noto Serif JP', serif;
font-weight: 300;
}
.list01 > li > .text02 {
margin-top: 16px;
font-size: 1.4rem;
line-height: 1.25;
}
@media screen and (max-width: 767px) {
.list01 > li > .text02 {
margin-top: 4.2666666667vw
}
}
.frameArea01 .list01 {
justify-content: flex-start
}
.frameArea01 .list01 > li::after {
color: #fff
}
.list01.type02 {
padding-bottom: 0
}
@media screen and (max-width: 767px) {
.list01.type02 > li {
margin-top: 80px
}
.list01.type02 > li:first-child {
margin-top: 0
}
}
.list01.type02 > li::before {
position: absolute;
top: 50%;
left: -49px;
content: "";
margin-top: -2px;
width: 36px;
height: 4px;
background-color: #222
}
@media screen and (max-width: 767px) {
.list01.type02 > li::before {
top: -48px;
left: 50%;
margin-top: 0;
margin-left: -1px;
width: 2px;
height: 23px;
background-color: #fff
}
}
.list01.type02 > li::after {
position: absolute;
top: 50%;
left: -32px;
content: "";
margin-top: -6px;
width: 20px;
height: 4px;
background-color: #222;
transform: rotate(30deg)
}
@media screen and (max-width: 767px) {
.list01.type02 > li::after {
top: -30px;
left: 50%;
margin-top: 0;
margin-left: -2px;
width: 10px;
height: 2px;
background-color: #fff;
transform: rotate(-50deg)
}
}
.list01.type02 > li:first-child::before {
content: normal
}
.list01.type02 > li:first-child::after {
content: normal
}
.list02 {
margin-top: 32px;
margin-left: 65%;
}
.list02:first-child {
margin-top: 0
}
.frameArea07 .list02 {
margin-top: 0
}
.list02 > li {
position: relative;
margin-top: 10px;
padding-left: 24px;
line-height: 1.25
}
.list02 > li::before {
position: absolute;
top: .3em;
left: 6px;
content: "";
width: 8px;
height: 8px;
border-radius: 50%;
background-color: #23d152
}

@media screen and (max-width: 767px) {
.list02 {
margin-top: 32px;
margin-left: 0%;
}
}

.list03 {
display: flex;
flex-wrap: wrap;
margin-top: 40px
}
@media screen and (max-width: 767px) {
.list03 {
margin-top: 21.3333333333vw
}
}
.list03 > li {
margin: 40px 0 0 4%;
width: 30.5%
}
.list03 > li:nth-child(3n+1) {
margin-left: 0
}
@media screen and (max-width: 767px) {
.list03 > li {
margin: 10.6666666667vw 0 0;
width: 100%
}
.list03 > li:nth-child(3n+1) {
margin: 10.6666666667vw 0 0
}
.list03 > li:first-child {
margin-top: 0
}
}
.list03 > li > .text01 {
margin-top: 16px
}
@media screen and (max-width: 767px) {
.list03 > li > .text01 {
margin-top: 2.1333333333vw
}
}
.list04 {
display: flex;
flex-wrap: wrap;
margin-top: 80px
}
@media screen and (max-width: 767px) {
.list04 {
margin-top: 21.3333333333vw
}
}
.list04 > li {
width: 50%
}
@media screen and (max-width: 767px) {
.list04 > li {
width: 100%
}
}
.list05 {
display: flex;
flex-wrap: wrap;
margin: 64px auto 0;
max-width: 800px
}
.list05.type02 {
max-width: inherit;
width: 100%
}
@media screen and (max-width: 767px) {
.list05 {
margin-top: 21.3333333333vw
}
}
.list05 > dt {
margin-right: 16px;
padding: 20px 0;
width: 160px;
border-bottom: #1b9e3e solid 2px;
font-weight: 700
}
@media screen and (max-width: 767px) {
.list05 > dt {
margin-right: 0;
padding: 4.2666666667vw 0 0;
width: 100%;
border-bottom: none
}
}
.list05 > dd {
padding: 20px 0;
width: calc(100% - 176px);
border-bottom: #ccc solid 1px
}
@media screen and (max-width: 767px) {
.list05 > dd {
margin-top: 2.1333333333vw;
padding: 0 0 4.2666666667vw;
width: 100%
}
}
.list05 > dd a {
color: #1b9e3e
}


.list05 > dd .list02 {
margin-left: 0;
}

.list05 > dd .list02 li {
position: relative;
margin-top: 10px;
padding-left: 24px;
line-height: 1.25
}
.list05 > dd .list02 li::before {
position: absolute;
top: .3em;
left: 6px;
content: "";
width: 8px;
height: 8px;
border-radius: 50%;
background-color: #23d152
}


.list06 {
display: flex;
flex-wrap: wrap;
margin-top: 40px
}
@media screen and (max-width: 767px) {
.list06 {
margin-top: 10.6666666667vw
}
}
.list06 > li {
margin-top: 40px;
padding: 0 10px;
width: 25%
}
@media screen and (max-width: 767px) {
.list06 > li {
margin-top: 10.6666666667vw;
padding: 0 2.6666666667vw;
width: 50%
}
}
.list06 > li > .icon01 {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: center;
margin: 0 auto;
width: 64px;
height: 64px;
border-radius: 50%;
background-color: #1b9e3e
}
@media screen and (max-width: 767px) {
.list06 > li > .icon01 {
width: 41px;
height: 41px
}
}
.list06 > li > .icon01.type01 > img {
width: 28px;
height: 32px
}
@media screen and (max-width: 767px) {
.list06 > li > .icon01.type01 > img {
width: 20px;
height: 26px
}
}
.list06 > li > .icon01.type02 > img {
width: 30px;
height: 30px
}
@media screen and (max-width: 767px) {
.list06 > li > .icon01.type02 > img {
width: 19px;
height: 19px
}
}
.list06 > li > .icon01.type03 > img {
width: 38px;
height: 24px
}
@media screen and (max-width: 767px) {
.list06 > li > .icon01.type03 > img {
width: 26px;
height: 17px
}
}
.list06 > li > .icon01.type04 > img {
width: 32px;
height: 20px
}
@media screen and (max-width: 767px) {
.list06 > li > .icon01.type04 > img {
width: 22px;
height: 14px
}
}
.list06 > li > .text01 {
margin-top: 24px;
font-size: 3.2rem;
font-weight: 700;
line-height: 1.0;
text-align: center
}
@media screen and (max-width: 767px) {
.list06 > li > .text01 {
margin-top: 4vw;
font-size: 2.0rem
}
}
.list06 > li > .text01 > .font01 {
color: #1b9e3e;
font-size: 4.8rem;
font-weight: 700
}
@media screen and (max-width: 767px) {
.list06 > li > .text01 > .font01 {
font-size: 3.2rem
}
}
.list06 > li > .text02 {
margin-top: 10px;
font-size: 2.0rem;
line-height: 1.25;
letter-spacing: .02em;
text-align: center
}
@media screen and (max-width: 767px) {
.list06 > li > .text02 {
margin-top: 2.1333333333vw;
font-size: 1.6rem
}
}
.list07 {
margin: 80px auto 0;
max-width: 800px
}
.list07 > dt {
position: relative;
padding-left: 28px;
font-size: 2.4rem;
font-weight: 700
}
.list07 > dt::before {
position: absolute;
z-index: 5;
top: .6em;
left: 0;
content: "";
width: 12px;
height: 12px;
border-radius: 50%;
background-color: #1b9e3e
}
.list07 > dd {
position: relative;
padding-left: 28px;
padding-bottom: 24px
}
.list07 > dd::before {
position: absolute;
top: -18px;
left: 5px;
content: "";
width: 2px;
height: calc(100% + 35px);
background-color: #ccc
}
.list07 > dd:last-child {
padding-bottom: 0
}
.list08 {
display: flex;
flex-wrap: wrap;
justify-content: center;
margin-top: -24px
}
@media screen and (max-width: 767px) {
.list08 {
margin-top: 0
}
}
.list08 > li {
display: flex;
flex-wrap: wrap;
justify-content: center;
align-content: center;
position: relative;
margin: 24px 8px 0;
width: 264px;
height: 264px;
border-radius: 50%;
background-color: #1b9e3e;
color: #fff;
text-align: center
}
@media screen and (max-width: 767px) {
.list08 > li {
display: block;
margin: 2.1333333333vw 0 0;
padding: 16px 7.4666666667vw 16px 95px;
width: 100%;
height: auto;
border-radius: 0
}
.list08 > li:first-child {
margin-top: 0
}
}
.list08 > li > .text01 {
width: 100%;
font-size: 2.0rem;
font-weight: 700;
line-height: 1.25;
text-align: center
}
@media screen and (max-width: 767px) {
.list08 > li > .text01 {
position: absolute;
top: 0;
left: 0;
padding: 13px 0 8px;
width: 80px;
border-bottom: #fff solid 1px
}
}
.list08 > li > .text02 {
margin-top: 16px;
line-height: 1.25
}
@media screen and (max-width: 767px) {
.list08 > li > .text02 {
margin-top: 6.4vw;
text-align: left
}
}
@media screen and (max-width: 767px) {
.list08 > li .text01 + .text02 {
margin-top: 0
}
}
.list09 {
display: flex;
flex-wrap: wrap
}
@media screen and (max-width: 767px) {
.list09 {
margin-top: 4.2666666667vw
}
}
.list09 > li {
margin: 32px 0 0 4%;
width: 30.6%
}
.list09 > li:nth-child(3n+1) {
margin-left: 0
}
@media screen and (max-width: 767px) {
.list09 > li {
margin: 8.5333333333vw 0 0;
width: 100%
}
}
.iframeArea01 {
position: relative;
margin-top: 16px;
padding-bottom: 56.25%;
height: 0;
overflow: hidden
}
@media screen and (max-width: 767px) {
.iframeArea01 {
margin-top: 4.2666666667vw
}
}
.iframeArea01 iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%
}
.table01 {
width: 100%;
border: #096021 solid 1px
}
.table01 .w01 {
width: 85%
}
@media screen and (max-width: 767px) {
.table01 .w01 {
width: 64%
}
}
.table01 .w02 {
width: 15%
}
@media screen and (max-width: 767px) {
.table01 .w02 {
width: 36%
}
}
.table01 thead th {
padding: 10px 16px;
border-right: #096021 solid 1px;
background-color: #1b9e3e;
color: #fff;
font-weight: 700;
text-align: center
}
@media screen and (max-width: 767px) {
.table01 thead th {
padding: 2.1333333333vw
}
}
.table01 tbody td {
padding: 10px 16px;
border-top: #096021 solid 1px;
border-right: #096021 solid 1px
}
@media screen and (max-width: 767px) {
.table01 tbody td {
padding: 2.1333333333vw
}
}
.table01 tbody tr:nth-child(even) td {
background-color: #f0f0f0
}


.section05 .list02 {
margin-top: 0;
margin-left: 0;
}
.section05 .list02 > li {
position: relative;
margin-top: 10px;
padding-left: 24px;
line-height: 1.25
}

.section05 .list02 > li::before {
position: absolute;
top: .3em;
left: 6px;
content: "";
width: 8px;
height: 8px;
border-radius: 50%;
background-color: #23d152
}

.mainImages01{
  opacity: 0;
  transition: opacity .3s linear;
}
.mainImages01.slick-initialized{
  opacity: 1;
}


.news_Area{
width: 100%;
position: relative;
margin: auto;
}

.news_Area ul{
width: 90%;
height: 200px;
overflow-y: scroll;
margin: 10px auto 0;
border-top: 1px solid #000;
}

.news_Area ul li{
border-bottom: 1px solid #000;
padding: 20px 5px;
box-sizing: border-box;
font-size: 0.9em;
}

.news_Area ul li .news_day{
width: 100%;
white-space: nowrap;
}

.news_Area ul li .news_txt{
width: 100%;
}

.news_Area ul li .news_txt a{
color: #1b9e3e;
}

.news_Area ul li .link_wrap{
width: 100%;
display: block;
}

.news_Area ul li .link_wrap span{
width: 20px !important;
display: inline-block;
}

.news_Area ul li .link_wrap span img{
color: #1b9e3e;
}

.news_Area ul li .link_wrap a{
color: #1b9e3e;
}

@media screen and (max-width: 767px) {

.news_Area ul{
width: 90%;
height: 200px;
overflow-y: scroll;
margin: 10px auto 0;
border-top: 1px solid #000;
}

.news_Area ul li{
border-bottom: 1px solid #000;
padding: 20px 5px;
box-sizing: border-box;
font-size: 0.9em;
}

.news_Area ul li .news_day{
width: 100%;
white-space: nowrap;
}


.news_Area ul li .news_txt{
width: 100%;
display: block;
margin: 0 0 10px;
}

.news_Area ul li .news_txt a{
color: #1b9e3e;
}

.news_Area ul li .link_wrap{
width: 100%;
display: block;
}

.news_Area ul li .link_wrap span{
width: 20px !important;
display: inline-block;
}

.news_Area ul li .link_wrap span img{
color: #1b9e3e;
}

.news_Area ul li .link_wrap a{
color: #1b9e3e;
}
}