@charset "UTF-8";
/*============================================================= home トップページ =============================================================*/
/*	タブ共通
=============================================================*/
.tabs { width: 100%; min-width: 260px; max-width: 300px; margin: 0 auto 15px; }

.tabs .tab_btn { cursor: pointer; width: 32%; min-width: 75px; max-width: 96px; margin: 0 .6%; float: left; color: #fff; text-align: center; font-size: 1.5rem; padding: 7px 0; background: url(../img/bg_red.png); border: 2px solid #b33c14; -webkit-transition: all 0.2s linear; transition: all 0.2s linear; }

.tabs .tab_btn.active, .tabs .tab_btn:hover { color: #b43408; background: url(../img/bg_gray02.png); }

.tabs .tab_btn.active { cursor: default; }

@media screen and (min-width: 600px) { .tabs { display: table; max-width: none; width: auto; margin: 0 0 20px auto !important; }
  .tabs .tab_btn { font-size: 1.8rem; max-width: none; width: 110px; margin: 0 2px; border-width: 1px; } }

.tab_body { display: none; }

.tab_body.active { display: block; }

/*	#info
=============================================================*/
#info { border-bottom: solid 1px #eeedee; }

@media screen and (max-width: 599px) { #info .wrapperInner { padding: 0; } }

#info table th { color: #fff; padding: 20px 15px; background: url(../img/bg_darkgreen01.png); width: 88px; vertical-align: middle; }

#info table td { padding: 20px 15px; background: #fff; }

#info table td span { color: #42913e; margin-right: 10px; }

#info table td a { text-decoration: underline; }

#info table td a:hover { text-decoration: none; }

@media screen and (min-width: 600px) { #info table th { width: 132px; text-align: center; padding: 26px 30px; }
  #info table td { padding: 26px 30px; }
  #info table td span { margin-right: 20px; } }

/*	#homeSec01
=============================================================*/
#homeSec01 { padding: 60px 0 75px; background: #fff; position: relative; }

#homeSec01:before { content: ""; display: block; position: absolute; pointer-events: none; z-index: 1; width: 152px; height: 194px; right: 0; top: 0; background: url(../img/bg_hana01_sp.png) no-repeat center; background-size: contain; }

#homeSec01:after { content: ""; display: block; position: absolute; pointer-events: none; z-index: 1; width: 271px; height: 312px; left: 0; bottom: 0; background: url(../img/bg_hana02_sp.png) no-repeat center; background-size: contain; }

#homeSec01 .homeSec01_inner { position: relative; z-index: 2; padding: 0 15px; }

#homeSec01 .homeSec01_inner.is_show { -webkit-animation-duration: 2s; animation-duration: 2s; -webkit-animation-name: fadeIn; animation-name: fadeIn; }

#homeSec01 .homeSec01_hd { margin-bottom: 15px; margin-top: 40px; }

#homeSec01 .homeSec01_hd .secTit { text-align: center; font-size: 2.2rem; line-height: 1.45; margin-bottom: 35px; }

#homeSec01 .homeSec01_hd .read { color: #808080; text-align: center; }

#homeSec01 .txt { padding: 0 20px; margin: 0 auto; }

#homeSec01 .txt.jp { line-height: 1.95; text-align: center; padding-bottom: 25px; position: relative; }

#homeSec01 .txt.en { line-height: 1.9; color: #808080; margin-bottom: 30px; }

#homeSec01 .anchorlink { margin: -10px 0 -20px; }

#homeSec01 .anchorlink .item { background: url(../img/bg_darkgreen01.png); color: #fff; text-align: center; border-radius: 5px; line-height: 1.6; font-size: 1.5rem; position: relative; }

#homeSec01 .anchorlink .item a { padding: 14px; display: block; }

#homeSec01 .anchorlink .item + .item { margin-top: 15px; }

#homeSec01 .anchorlink .item:before { position: absolute; content: ''; background: url(../img/ico_arrow.png); background-size: contain; width: 15px; height: 9px; top: calc(50% - 3px); right: 20px; }

@media screen and (min-width: 600px) { #homeSec01 { padding: 0 0 170px; overflow: hidden; }
  #homeSec01:before { background: url(../img/bg_hana01_pc.png) no-repeat center; width: 586px; height: 734px; top: 0; right: 0; }
  #homeSec01:after { background: url(../img/bg_hana02_pc.png) no-repeat center; width: 745px; height: 738px; bottom: 0; left: 0; }
  #homeSec01 .homeSec01_inner { max-width: 1740px; margin: 0 auto; padding: 0; }
  #homeSec01 .homeSec01_hd { margin-bottom: 45px; margin-top: 190px; }
  #homeSec01 .homeSec01_hd .secTit { font-size: 3.8rem; margin-bottom: 15px; }
  #homeSec01 .homeSec01_hd .read { font-size: 2rem; }
  #homeSec01 .txt { padding: 0; max-width: 1000px; letter-spacing: .05em; }
  #homeSec01 .txt.jp { margin: 0 auto 20px; padding-bottom: 20px; }
  #homeSec01 .txt.jp:before { width: 180px; height: 260px; left: -250px; bottom: -120px; }
  #homeSec01 .txt.en { margin-bottom: 90px; }
  #homeSec01 .linkinner { width: 1110px; margin: 140px auto -40px; }
  #homeSec01 .anchorlink { overflow: hidden; }
  #homeSec01 .anchorlink .item { width: 250px; font-size: 1.7rem; float: left; }
  #homeSec01 .anchorlink .item + .item { margin-top: 0; margin-left: 30px; }
  #homeSec01 .anchorlink a:hover { background: url(../img/bg_black02.png); border-radius: 5px; } }

/*!	#instafeed
---------------------------*/
.instafeedWrap { position: relative; z-index: 2; }

.instafeedWrap .linkBox { color: #fff; width: 220px; text-align: center; left: 0; right: 0; margin: auto; position: absolute; }

@media screen and (max-width: 599px) { .instafeedWrap .linkBox { left: 0 !important; } }

.instafeedWrap .linkBox .tit { font-size: 3.6rem; padding-top: 46px; background: url(../img/ico_instagram.png) no-repeat center top; background-size: 46px; }

.instafeedWrap .linkBox .txt { line-height: 1; margin-bottom: 55px !important; }

.instafeedWrap .linkBox .btnLink { display: block; font-size: 1.3rem; letter-spacing: 3px; padding: 11px 0; max-width: 217px; margin: 0 auto; background: url(../img/bg_red.png); }

@media screen and (min-width: 600px) { .instafeedWrap .linkBox { width: 250px; height: 260px; position: absolute; top: 0 !important; bottom: 0; right: auto; margin: auto; }
  .instafeedWrap .linkBox .tit { font-size: 4.2rem; padding-top: 50px; background-size: 55px; }
  .instafeedWrap .linkBox .txt { font-size: 1.8rem; }
  .instafeedWrap .linkBox .btnLink { font-size: 1.5rem; width: 250px; padding: 15px 0; max-width: none; -webkit-transition: all 0.2s linear; transition: all 0.2s linear; }
  .instafeedWrap .linkBox .btnLink:hover { letter-spacing: 7px; } }

#instafeed .instaBox { width: 50%; float: left; }

#instafeed .instaBox:nth-of-type(3) { clear: both; float: none; width: 100%; }

@media screen and (max-width: 599px) { #instafeed .instaBox:nth-of-type(2) { margin-top: 0 !important; } }

#instafeed .instaBox a { height: 100%; display: block; background: #000; }

#instafeed .instaBox a img { opacity: .5; }

@media screen and (min-width: 600px) { #instafeed { position: relative; }
  #instafeed .instaBox { width: 20%; }
  #instafeed .instaBox:nth-of-type(2) { margin-left: -20%; }
  #instafeed .instaBox:nth-of-type(3) { float: left; clear: none; width: 40%; }
  #instafeed .instaBox a img { -webkit-transition: all 0.2s linear; transition: all 0.2s linear; }
  #instafeed .instaBox a:hover img { opacity: 1; -webkit-transform: scale(1.05); -ms-transform: scale(1.05); transform: scale(1.05); } }

/*	#homeSec02
=============================================================*/
#homeSec02 { padding: 20px 0 0; background: url(../img/bg_green01.png); background-size: 89px; }

#homeSec02 .columnWrap { padding: 0 15px; }

@media screen and (max-width: 599px) { #homeSec02 .columnWrap .imgBox img { height: auto; } }

#homeSec02 .columnWrap .imgBox.is_show { -webkit-animation-duration: 1s; animation-duration: 1s; -webkit-animation-name: fadeInUp; animation-name: fadeInUp; }

#homeSec02 .tabs { margin: -60px auto 15px; position: relative; z-index: 2; }

#homeSec02 .txtBoxWrap.is_show { -webkit-animation-duration: 1s; animation-duration: 1s; -webkit-animation-name: fadeInUp; animation-name: fadeInUp; }

#homeSec02 .txtBox { padding: 43px 43px 55px; background: url(../img/bg_lightgray01.png); position: relative; overflow: hidden; }

#homeSec02 .txtBox .tit, #homeSec02 .txtBox .txt { position: relative; z-index: 2; }

#homeSec02 .txtBox .tit { font-size: 2.2rem; line-height: 1.7; margin-bottom: 15px; }

#homeSec02 .txtBox .sub { font-size: 1.8rem; margin-bottom: 5px; }

@media screen and (min-width: 600px) { #homeSec02 { padding: 150px 0 0; background-size: auto; }
  #homeSec02 .columnWrap { padding: 0; min-height: 720px; margin-bottom: 130px; position: relative; overflow: hidden; }
  #homeSec02 .columnWrap .columnWrapIn { max-width: 1740px; margin: 0 auto; }
  #homeSec02 .columnWrap:nth-of-type(2) { margin-bottom: 60px; }
  #homeSec02 .columnWrap:nth-of-type(2) .imgBox { left: auto; right: 0; }
  #homeSec02 .columnWrap:nth-of-type(2) .txtBoxWrap { margin-right: auto; margin-left: 0; }
  #homeSec02 .imgBox { width: 64%; height: 720px; position: absolute; left: 0; top: 0; }
  #homeSec02 .txtBoxWrap { width: 670px; margin: 200px 0 0 auto; }
  #homeSec02 .txtBox { padding: 70px 50px; }
  #homeSec02 .txtBox:before { width: 135px; height: 140px; }
  #homeSec02 .txtBox .tit { font-size: 3rem; margin-bottom: 20px; }
  #homeSec02 .txtBox .sub { font-size: 2.4rem; } }

/*	slider
---------------------------*/
.sliderWrap { padding: 40px 0 40px; }

@media screen and (min-width: 600px) { .sliderWrap { padding: 40px 0 160px; } }

/* slick */
.sliderWrap .slick-slide { height: auto; }

.sliderWrap .slick-prev, .sliderWrap .slick-next { width: 45px; height: 100%; background: rgba(66, 145, 62, 0.8); background-position: center; background-repeat: no-repeat; background-size: 14px; z-index: 3; top: 0; -webkit-transform: none; -ms-transform: none; transform: none; -webkit-transition: all 0.2s linear; transition: all 0.2s linear; }

.sliderWrap .slick-prev:hover, .sliderWrap .slick-next:hover { background-color: rgba(68, 68, 68, 0.8); }

.sliderWrap .slick-prev { left: 0; background-image: url(../img/ico_arrow01.png); }

.sliderWrap .slick-next { right: 0; background-image: url(../img/ico_arrow02.png); }

.sliderWrap .slick-dots { bottom: -35px; }

.sliderWrap .slick-dots li { margin: 0 auto; }

.sliderWrap .slick-dots li button:before { color: #fff; opacity: 1; width: 22px; height: 22px; }

.sliderWrap .slick-dots li.slick-active button:before { color: #444; }

@media screen and (min-width: 600px) { .sliderWrap .slick-prev, .sliderWrap .slick-next { width: 90px; background-size: 28px; }
  .sliderWrap .slick-dots { bottom: -59px; }
  .sliderWrap .slick-dots li { margin: 0 3px; }
  .sliderWrap .slick-dots li button:before { font-size: 15px; } }

/*	#homeSec03
=============================================================*/
#homeSec03 { padding: 30px 0 15px; background: url(../img/bg_gray01.png); background-size: 89px; }

#homeSec03 .secTit { font-size: 2.4rem; padding: 3px 0 10px 50px; margin-bottom: 20px; background-position: left 5px; background-repeat: no-repeat; background-size: 40px; border-bottom: 1px solid #a7a8a9; }

#homeSec03 .subBox { padding: 5px 25px 35px; margin-bottom: 25px; background: url(../img/bg_lightgray01.png); }

#homeSec03 .gaiyou .secTit { background-image: url(../img/ico_gaiyou.png); }

#homeSec03 .gaiyou table { margin-bottom: 40px; }

#homeSec03 .gaiyou table tr { border: 1px solid #e5e0dc; }

#homeSec03 .gaiyou table th, #homeSec03 .gaiyou table td { display: block; width: 100%; font-weight: 400; }

#homeSec03 .gaiyou table th { padding: 7px 15px; color: #333; font-weight: 700; background: url(../img/bg_lightgray02.png); }

#homeSec03 .gaiyou table td { padding: 12px 15px; }

#homeSec03 .gaiyou table td .note { margin-top: 5px; font-size: 1.1rem; }

#homeSec03 .gaiyou .subBoxIn .tit { font-size: 1.5rem; background: url(../img/bg_darkgreen01.png); padding: 15px 25px; margin: 30px 0 15px; border-radius: 5px; color: #fff; }

#homeSec03 .gaiyou .subBoxIn .txt01 { border-bottom: solid 1px #dddede; padding-bottom: 15px; margin-bottom: 15px; }

#homeSec03 .gaiyou .subBoxIn .tit02 { font-weight: bold; font-size: 1.5rem; margin: 20px 0 10px; padding-bottom: 5px; border-bottom: 1px solid #ccc; }

#homeSec03 .gaiyou .subBoxIn .tit02 + .subBoxContent { margin-top: 0; }

#homeSec03 .gaiyou .subBoxIn .note { font-size: 1.1rem; }

#homeSec03 .gaiyou .subBoxIn .list .item { position: relative; padding-left: 25px; }

#homeSec03 .gaiyou .subBoxIn .list .item:before { position: absolute; content: ''; width: 3px; height: 3px; border-radius: 50%; background: #000; top: 11px; left: 15px; }

#homeSec03 .gaiyou .subBoxIn .list .item span { font-weight: bold; }

#homeSec03 .gaiyou .subBoxIn .txtlink { margin-top: 20px; }

#homeSec03 .gaiyou .subBoxIn .txtlink a { color: #4e924d; text-decoration: underline; }

#homeSec03 .gaiyou .subBoxIn .map .maplist .item { border: solid 1px #ccc; }

#homeSec03 .gaiyou .subBoxIn .map .maplist .item + .item { margin-top: 10px; }

#homeSec03 .gaiyou .subBoxIn .map .maplist .item02 { padding: 15px; background: #fff; }

#homeSec03 .gaiyou .subBoxIn .map .tit03 { margin-top: 15px; font-weight: bold; font-size: 1.5rem; }

#homeSec03 .gaiyou .subBoxContent .set01 .tit01 { font-weight: 700; color: #42913e; border: solid 2px #42913e; text-align: center; width: 75%; margin: 20px 0 12px; background: url(../img/bg_lightgray01.png); }

#homeSec03 .gaiyou .subBoxContent .set01 .txt { margin-top: 12px; }

#homeSec03 .gaiyou .subBoxContent .set01 .txt span { font-weight: 700; }

#homeSec03 .gaiyou .subBoxContent .set01 .list .item { position: relative; padding-left: 25px; }

#homeSec03 .gaiyou .subBoxContent .set01 .list .item:before { position: absolute; content: ''; width: 3px; height: 3px; border-radius: 50%; background: #000; top: 11px; left: 15px; }

#homeSec03 .access .secTit { background-image: url(../img/ico_access.png); }

#homeSec03 .access .subBox .mapBox { position: relative; width: 100%; height: 0; margin: 0 auto 30px; padding-top: 82%; }

#homeSec03 .access .subBox .mapBox iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

#homeSec03 .access .subBox .txtBox .tit { font-weight: 700; font-size: 1.5rem; }

#homeSec03 .access .subBox .txtBox .btnAccess { display: block; text-align: center; font-size: 1.3rem; padding: 10px 0; border: 1px solid #000; }

#homeSec03 .access .subBox .txtBox .btnAccess span { display: table; margin: 0 auto; padding-left: 20px; background: url(../img/ico_bus.png) no-repeat left center; background-size: 14px; }

#homeSec03 .about .secTit { background-image: url(../img/ico_about.png); }

#homeSec03 .about .subBox { padding: 25px; }

#homeSec03 .about .subBox .img_main { display: block; width: 100%; margin: 0 auto 17px; }

#homeSec03 .about .subBox .img_sub { width: 49.5%; float: left; margin-bottom: 1%; }

#homeSec03 .about .subBox .img_sub:nth-of-type(odd) { float: right; }

@media screen and (min-width: 600px) { #homeSec03 { padding: 110px 0 40px; background-size: auto; }
  #homeSec03 .secTit { font-size: 2.8rem; padding: 0 0 20px 60px; margin-bottom: 36px; background-size: 45px; background-position: left 4px; }
  #homeSec03 .subBox { padding: 15px 40px 45px; margin-bottom: 70px; }
  #homeSec03 .tabs { margin-bottom: 25px !important; }
  #homeSec03 .gaiyou { letter-spacing: .05em; }
  #homeSec03 .gaiyou table th, #homeSec03 .gaiyou table td { display: table-cell; padding: 15px 30px 15px; }
  #homeSec03 .gaiyou table th { border-right: 1px solid #e5e0dc; width: 230px; vertical-align: top; }
  #homeSec03 .gaiyou table td { width: auto; }
  #homeSec03 .gaiyou table td .big { font-size: 2rem; }
  #homeSec03 .gaiyou table td .note { font-size: 1.4rem; }
  #homeSec03 .gaiyou .subBoxIn + .subBoxIn { margin-top: 55px; }
  #homeSec03 .gaiyou .subBoxIn .tit { font-size: 1.8rem; padding: 10px 28px; margin: 30px 0; }
  #homeSec03 .gaiyou .subBoxIn .note { font-size: 1.4rem; }
  #homeSec03 .gaiyou .subBoxIn .tit02 { font-size: 1.7rem; padding-bottom: 10px; margin: 35px 0 15px; }
  #homeSec03 .gaiyou .subBoxIn .tit02 + .subBoxContent { margin-top: -15px; }
  #homeSec03 .gaiyou .subBoxIn .map .maplist { overflow: hidden; }
  #homeSec03 .gaiyou .subBoxIn .map .maplist .item { width: 535px; float: left; }
  #homeSec03 .gaiyou .subBoxIn .map .maplist .item + .item { margin-left: 20px; margin-top: 0; }
  #homeSec03 .gaiyou .subBoxIn .map .maplist .item02 { width: 535px; height: 535px; padding-top: 105px; }
  #homeSec03 .gaiyou .subBoxIn .map .tit03 { font-size: 1.8rem; margin-top: 30px; }
  #homeSec03 .gaiyou .subBoxContent .set01 .tit01 { border: solid 2px #42913e; text-align: center; width: 236px; margin: 40px 0 22px; background: url(../img/bg_lightgray01.png); }
  #homeSec03 .gaiyou .subBoxContent .set01 .list .item { position: relative; padding-left: 27px; }
  #homeSec03 .gaiyou .subBoxContent .set01 .list .item:before { position: absolute; content: ''; width: 3px; height: 3px; border-radius: 50%; background: #000; top: 13px; left: 15px; }
  #homeSec03 .access { letter-spacing: .05em; }
  #homeSec03 .access .subBox { position: relative; padding: 45px 40px; }
  #homeSec03 .access .subBox .mapBox { position: relative; width: 100%; height: 0; margin: 0 auto 20px; padding-top: 37.6%; }
  #homeSec03 .access .subBox .mapBox iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
  #homeSec03 .access .subBox .tabs { float: right; position: absolute; top: 37px; right: 29px; }
  #homeSec03 .access .subBox .txtBox { padding: 10px 0 0; border-top: none; }
  #homeSec03 .access .subBox .txtBox .tit { font-weight: 700; font-size: 1.8rem; }
  #homeSec03 .about .subBox { padding: 40px; }
  #homeSec03 .about .subBox .img_main { margin-bottom: 30px; }
  #homeSec03 .about .subBox .img_sub { width: 24.5%; margin: 0 .66% 0 0; }
  #homeSec03 .about .subBox .img_sub:nth-of-type(odd) { float: left; }
  #homeSec03 .about .subBox .img_sub:last-of-type { margin-right: 0; } }
