@charset "UTF-8";/* Scss Document */body {  font-family: Noto Sans JP, "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;  color: #42483F;  font-size: 14px;  letter-spacing: 0.06em;  line-height: 1.78;  font-weight: 400;  font-style: normal;  -webkit-font-smoothing: antialiased;  -moz-osx-font-smoothing: grayscale;}.bold {  font-family: Noto Sans JP, "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;  font-weight: 700;  letter-spacing: 1.34;}h3, h4 {  font-family: Noto Sans JP, "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;  letter-spacing: 0.2em;  font-weight: 700;  text-align: justify;}@media screen and (min-width: 601px) {  body {    font-family: YuGothic, "Yu Gothic Medium", "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;    font-weight: 400;  }  .bold {    font-family: YuGothic, "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;    font-weight: bold;  }  h3, h4 {    font-family: YuGothic, "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;    font-weight: bold;  }}p {  text-align: justify;}.guidance a {  color: #357629;}.recommend a {  color: #42483F;}#sustainable_tourism {  background-color: #A4B79A;}#eco_friendly {  background-color: #D0CB96;}.recommend div .link_place.abroad {  background-color: #616C5C;}.recommend div .link_place.national {  background-color: #A6B554;}.js_fadein {  opacity: 0;}header {  padding: 9px 0 5px;}header h1 {  width: 54.6%;  margin-left: 43.2%;}header h1 a {  line-height: 0;}main .topmain {  width: 100%;  padding-left: 3.73%;  position: relative;  height: 195vw;  background-image: url("../image/forourfuture.svg");  background-repeat: no-repeat;  background-size: contain;  background-position: left bottom 14.5%;}.line_animation {  width: 96.27%;  z-index: 4444;  top: 0;  position: absolute;}#topmain_bg_sp .svg-elem-1 {  visibility: hidden;  stroke-dashoffset: 2759.422607421875px;  stroke-dasharray: 2759.422607421875px;  -webkit-transition: stroke-dashoffset 2s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;  -moz-transition: stroke-dashoffset 2s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;  -ms-transition: stroke-dashoffset 2s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;  -o-transition: stroke-dashoffset 2s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;  transition: stroke-dashoffset 2s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;}.active #topmain_bg_sp .svg-elem-1 {  visibility: visible;  stroke-dashoffset: 0;}main .topmain h2 span {  letter-spacing: 0.463em;  font-size: 8.7vw;  padding-top: 6.74%;  margin-left: 5.425%;  color: #000000;  font-weight: normal;  line-height: 1;  z-index: 5555;  position: relative;}@media screen and (max-width: 600px) {  main .topmain h2 span {    font-family: 'Shippori Mincho', serif;    writing-mode: vertical-rl;  }	.banar{		background-image: url("../image/banar_bg_sp.jpg");	}}main .topmain .main_img_1_box {  width: 70.4%;  position: absolute;  right: 0;  top: 9.2%;  z-index: 3333;}main .topmain .main_img_2_box {  width: 70.4%;  position: absolute;  left: 15%;  top: 56%;  z-index: 2222;}.message {  margin: 26px 5% 64px;}.message h3 {  font-size: 5vw;  margin-bottom: 14px;  letter-spacing: 0.24em;  line-height: 1.79;}.message p {  font-size: 14px;}.guidance {  margin: 0 5% 64px;}.guidance a span {  display: block;  text-indent: 100%;  white-space: nowrap;  overflow: hidden;  font-size: 24px;	width:30px;}.guidance a p::before {  display: block;  content: "";  width: 1px;  height: 34px;  position: absolute;  top: 50%;  transform: translateY(-50%);  left: 0;  background-color: #357629;}.guidance a div {  display: flex;  align-items: center;  justify-content: start;  height: 73px;  margin: 0 auto;  padding-left: calc(18.4% - 20px);  padding-right: 5%;  position: relative;}.guidance a div::after {  display: block;  content: "";  width: 24.1452px;  height: 18px;  position: absolute;  top: 50%;  transform: translateY(-50%);  left: calc(18.4% - 20px);}.guidance a:nth-of-type(1) div::after {  background: url("../image/01.svg") no-repeat center center/contain;}.guidance a:nth-of-type(2) div::after {  background: url("../image/02.svg") no-repeat center center/contain;  width: 27.3837px;}.guidance a p {  margin-left: 20.5px;  padding-left: 20.5px;  color: #357629;  letter-spacing: 0.18em;  line-height: 1.34;  position: relative;}.guidance a {  margin: 0 auto;  max-width: 337px;  height: 75px;  border: 1px solid #357629;  border-radius: 37.5px;  display: block;  width: 100%;}.guidance a:first-of-type {  margin-bottom: 13px;}#sustainable_tourism, #eco_friendly {  width: 100%;  position: relative;  padding-top: 63px;  padding-bottom: 88px;  background-image: url("../image/trad_bg.png");  background-repeat: repeat;  background-size: 375px;  background-blend-mode: multiply;  -webkit-background-blend-mode: multiply;  -moz-background-blend-mode: multiply;  -ms-background-blend-mode: multiply;  -o-background-blend-mode: multiply;}#sustainable_tourism.js_reveal::before, #eco_friendly.js_reveal::before {  padding-top: 0%;}#sustainable_tourism::before, #eco_friendly::before {  display: block;  content: "";  position: absolute;  top: .7%;  background-repeat: no-repeat;  background-size: cover;  transition-duration: 1s;  transition-property: padding-top;  overflow: hidden;}#sustainable_tourism::before {  background-image: url("../image/sustainable_tourism.svg");  width: 8%;  left: 2%;  padding-top: 91.5%;}#eco_friendly::before {  background-image: url("../image/eco_friendry.svg");  width: 10%;  left: 0;  padding-top: 54%;}.recommend {  margin-bottom: 40px;}.recommend .recommend_title {  margin-left: 17%;  width: 83%;  text-align: center;}.recommend div h3, .recommend div span {  display: inline-block;  margin: 0 auto;}.recommend div h3 {  font-size: 18px;  letter-spacing: 0.24em;  line-height: 1.5;  display: inline-block;}.recommend #eco_friendly h3 {  margin-bottom: 28px;  text-align: start;}.recommend div span {  margin-top: 1px;  letter-spacing: 0.06em;  margin-bottom: 28px;  display: block;}.recommend div ul li {  width: 84%;  background-color: #fff;  margin-left: 16%;  margin-bottom: 5%;  padding: 5.6% 5.06% 5% 6.13%;}.recommend div ul li:nth-of-type(2n) {  margin-left: 0;  padding: 5.6% 6.13% 5% 5.06%;}.recommend div .link_image {  position: relative;}.recommend div .link_place {  color: #fff;  font-weight: 600;  padding: 0 26px;  line-height: 32px;  border-radius: 16px;  display: inline-block;  position: absolute;  right: -10px;  top: -10px;}.recommend div .link_place p {  display: inline;  line-height: 0;  letter-spacing: 0.1em;  font-size: 13px;}.recommend li h4 {  margin-top: 4.5%;  margin-bottom: 2%;  letter-spacing: 0.13em;  line-height: 1.5;}.recommend li p {  font-size: 12px;}.banar {  margin: 0 auto 80px;  width: 90%;  max-width: 337px;  height: 212px;  background-repeat: no-repeat;  background-size: cover;  background-position: center;  background-position: bottom;  padding: 60px 10px 30px;}.banar h3, .banar span {  color: #fff;  text-align: center;  line-height: 1;}.banar h3 {  font-size: 15px;}.banar a {  width: 218px;  height: 45px;  border: 1px solid #357629;  border-radius: 22.5px;  background-color: #fff;  display: block;  text-align: center;  margin: 20px auto 30px;}.banar a p {  color: #357629;  text-align: center;  position: relative;  display: inline-block;  padding-right: 28px;  padding-left: 8px;  font-size: 15px;  letter-spacing: 0.12em;  font-weight: 600;  line-height: 42px;}.banar a p::after {  display: block;  content: "";  width: 9%;  padding-top: 10.3846%;  background: url("../image/triangle.svg") no-repeat center center/contain;  position: absolute;  right: 0;  top: 50%;  transform: translateY(-47%);}.banar span {  font-size: 13px;  text-align: center;  margin: 0 auto;  display: block;}footer, footer a {  text-align: center;  color: #357629;}footer a {  font-size: 11px;  font-weight: 600;  line-height: 1;  margin-bottom: 6px;}footer .copyright {  font-size: 11px;  letter-spacing: 0;  line-height: 1;  margin-bottom: 10px;}a {	-webkit-transition: color .3s, background-color .3s, opacity .3s, transform .3s;  transition: color .3s, background-color .3s, opacity .3s, transform .3s;}a:hover {  opacity: 0.7;	-webkit-transform: scale(103%);  transform: scale(103%);}.banar a:hover {  opacity: 1;}.guidance a:hover, .banar a:hover {  background-color: #357629;}.guidance a:hover span {  -webkit-text-stroke: 1px #fff;}.guidance a:hover p, .banar a:hover p {  color: #fff;}.guidance a:hover p::before {  background-color: #fff;}.guidance a:nth-of-type(1):hover div::after {  background: url("../image/01_white.svg") no-repeat center center/contain;}.guidance a:nth-of-type(2):hover div::after {  background: url("../image/02_white.svg") no-repeat center center/contain;}.banar a:hover p::after {  background: url("../image/triangle_white.svg") no-repeat center center/contain;}@media screen and (min-width: 601px) {  header {    padding: 1.66% 1.59% 0 0;    position: absolute;    top: 0;    width: 100%;  }  header h1 {    width: 20.4%;    min-width: 212px;    margin-left: 0;    margin: 0 0 0 auto;  }  main {    overflow: hidden;  }  main .topmain {    padding-left: 9.29%;    margin-top: 3.2%;    padding-top: 5.092%;    height: 83vw;    min-height: 930px;    background-position: bottom;    margin-bottom: 165px;  }  .topmain h2 {    		background: url(../image/title_pc.svg) no-repeat center top/contain;    width: 10.415%;    padding-top: 48.30366432%;    margin-left: 1.756%;    min-width: 110.062px;  }  .topmain h2 span {    display: block;    text-indent: 100%;    white-space: nowrap;    overflow: hidden;  }  #topmain_bg_pc .st0 {    stroke-width: calc(0.125rem + ((1vw - 6.01px) * 0.0758));  }  #topmain_bg_pc .svg-elem-1 {    stroke-dashoffset: 7080.3603515625px;    stroke-dasharray: 7080.3603515625px;    -webkit-transition: stroke-dashoffset 3s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;    transition: stroke-dashoffset 3s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;    visibility: hidden;  }  .active #topmain_bg_pc .svg-elem-1 {    stroke-dashoffset: 14160.720703125px;    visibility: visible;  }  .line_animation {    width: 90.71%;    min-width: 1057.5px;  }  main .topmain .main_img_1_box {    width: 51.9%;    min-width: 298px;    position: absolute;    top: 0;    right: calc(6.25rem + ((1vw - 6.01px) * 6.1878));    z-index: 1111;  }  main .topmain .main_img_2_box {    position: absolute;    bottom: 19.09%;    left: 0;    width: 40.23%;    min-width: 231px;    z-index: 2222;    top: auto;  }  main .topmain .main_img_3_box {    position: absolute;    bottom: 0;    width: 44.52%;    min-width: 253px;    right: 0;  }  .img_box {    position: absolute;    top: 3.5vw;    height: 60vw;    width: 55.11%;    min-height: 675px;    min-width: 519px;    left: calc(10.4375rem + ((1vw - 6.01px) * 46.0773));  }  .message {    display: flex;    flex-wrap: wrap;    justify-content: start;    align-items: center;    margin: 0 auto 149px;    width: 80%;    max-width: 1098px;    gap: 2.8%;  }  .message h3 {    display: inline-block;    width: 456px;    flex-grow: 0;    font-size: 35px;    margin-left: 4.239%;    line-height: 1.7;    letter-spacing: 0.18em;  }  .message p {    display: block;    flex-grow: 5;    width: 437px;    overflow-wrap: break-word;    margin-left: 4.239%;    font-size: 18px;    letter-spacing: 0.06em;    line-height: 1.72;  }  .guidance {    display: flex;    flex-wrap: wrap;    justify-content: center;    align-items: center;    margin: 0 auto 157px;    gap: 35px;    width: 85%;  }  .guidance a {    width: 447px;    margin: 0;    height: 100px;    border-radius: 50px;    max-width: none;  }  .guidance a div {    height: 100px;  }  .guidance a:first-of-type {    margin-bottom: 0;  }  .guidance a span {    font-size: 39px;		width:40px;  }  .guidance a div::after {    width: 31.5518px;    height: 23.5215px;  }  .guidance a:nth-of-type(2) div::after {    width: 35.7837px;  }  .guidance a p {    font-size: 18px;    margin-left: 20.5px;    padding-left: 28.5px;  }  .guidance a p::before {    background-color: #357629;    height: 44.69px;  }  .recommend {    margin-bottom: 96px;  }  .recommend div ul {    width: 86.52%;    display: flex;    flex-wrap: wrap;    max-width: 1279px;    justify-content: center;    margin: 0 auto;    padding-left: 5.37%;		gap:5%;  }  .recommend div ul li {    width: 47.45%;    margin-left: 0;    min-width: 350px;    flex-grow: 1;    padding: 0;  }  .recommend div ul li:nth-of-type(2n) {    padding: 0;  }  .recommend div ul li a {    padding: 6.63% 6.80% 8.67%;    width: 100%;    display: block;  }  #sustainable_tourism::before {    width: 4%;    left: 1.12%;    padding-top: 45.5%;    /* background-size: cover; */  }  #sustainable_tourism::before, #eco_friendly::before {    top: 1.5vw;  }  #eco_friendly::before {    width: 5.17%;    padding-top: 27.6%;  }  #sustainable_tourism, #eco_friendly {    padding-top: 96px;    padding-bottom: 139px;  }  .recommend div h3 {    font-size: calc(1.3125rem + ((1vw - 6.01px) * 1.326));  }  .recommend div span {    font-size: calc(1.0625rem + ((1vw - 6.01px) * 0.9945));  }  .recommend .recommend_title {    margin-left: 6.8%;    width: 93.2%;  }  .recommend div span {    margin-top: 5px;    margin-bottom: 62px;  }  .recommend #eco_friendly h3 {    margin-bottom: 62px;  }  .recommend li p {    font-size: 14px;  }  .recommend li a > p {    display: -webkit-box;    overflow: hidden;    -webkit-line-clamp: 3;    -webkit-box-orient: vertical;  }  .recommend li h4 {    font-size: calc(1.3125rem + ((1vw - 6.01px) * 0.3315));    margin-top: 24px;    margin-bottom: 12px;  }  .recommend div .link_place p {    font-size: calc(1rem + ((1vw - 6.01px) * 0.442));    line-height: inherit;    min-width: 137px;    display: inline-block;    text-align: center;  }  .recommend div .link_place {    line-height: 46px;    border-radius: 23px;  }  .banar {    max-width: none;    height: 40.96vw;    padding: 10.83% 0 2.324%;    max-height: 617px;				background-image: url("../image/banar_bg_pc.jpg");  }  .banar h3 {    font-size: calc(1.125rem + ((1vw - 6.01px) * 1.8785));  }  .banar span {    font-size: calc(0.875rem + ((1vw - 6.01px) * 1.547));  }  .banar a {    margin: 5.17% auto 4.17%;    width: 37.2%;    height: 7vw;    border-radius: 3.75vw;  }  .banar a p {    font-size: calc(0.875rem + ((1vw - 6.01px) * 2.3204));    line-height: 7vw;    padding-right: 15%;  }}@media screen and (min-width: 601px) and (max-width: 1165px) {  .topmain h2 {    margin-left: 20.5px;  }  main .topmain {	    padding-top: 62.3px;  }}@media screen and (min-width: 601px) and (max-width: 900px) {	.topmain h2{		padding-top: 480px;	}	}@media screen and (min-width: 1506px) {  .banar {    width: 1339px;    padding: 163px 0 83px;  }  .banar h3 {    font-size: 35px;  }  .banar span {    font-size: 28px;  }  .banar a {    margin: 5.17% auto 4.17%;    width: 502px;    height: 103px;    border-radius: 51.5px;  }  .banar a p {    font-size: 35px;    line-height: 103px;    padding-right: 75.253px;  }  .banar a p::after {    width: 29.45px;    padding-top: 33.98px;  }  .recommend li h4 {    font-size: 24px;  }}.main_img_2_box {  animation-delay: .5s;}.main_img_3_box {  animation-delay: 1s;}@media (min-width: 863px) {	@media not all and (min-resolution:.001dpcm) {  @supports (not (translate: none)) {					.recommend div ul li {						margin-right:5%;        }					.recommend div ul li:nth-of-type(2n) {						margin-right:0;        }		}	}}@media not all and (min-resolution:.001dpcm) {  @supports (not (translate: none)) {		.guidance a{			margin:0 17px 35px!important;		}	}	}