@import url('https://fonts.googleapis.com/css2?family=Zen+Old+Mincho:wght@400;600;900&display=swap');

:root {
  --green1: #4D7256;
}



/* 開発用・完成後消してよし */
body{
 /* background-image:url(../images/tmpl_pc.jpg);
  background-size: 1600px;
  background-position: top center;
  background-repeat: no-repeat; */
}
/* 開発用ここまで・完成後消してよし */

/* リセットCSS */
article,aside,details,figcaption,figure,footer,header,hgroup,nav,section,summary {display: block}

audio,canvas,video {display : inline-block}

audio:not([controls]) { display: none;height: 0}

[hidden] {display: none}

html {
    font-family: "Zen Old Mincho", serif;
    font-weight: 400;
    background-color: #ffffff;
    color: #000;
    letter-spacing: 0.2em;
    font-size: 100%;
}
.gothic{
  font-family: "Meiryo UI" , "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Helvetica Neue", Arial,  Meiryo, sans-serif;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  letter-spacing: 0;
}

body { margin : 0}

h1,h2,h3,h4,h5,h6,p,ul,ol,dl,table,pre { margin: 0} /*上方向のmarginを0にします */

ul, li{
	margin: 0;
	padding: 0;
	text-decoration: none;
	list-style:none;
}

a:focus { outline: thin dotted}

a:hover,a:active { outline : 0}

  /* 禁則処理の追加 */
p,li,dt,dd,th,td,pre{
-ms-line-break: strict;
line-break: strict;
-ms-word-break: break-strict;
word-break: break-strict}

abbr[title] { border-bottom : 1px dotted}

b, strong { font-weight : bold}

mark { background: #ff0;
color: #000}

code, kbd, pre, samp {
font-family: monospace, serif;
font-size: 1em}

sub, sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline}

sup {top: -0.5em}
sub {bottom: -0.25em}

img {
max-width :100%; /* フルードイメージへの対応 */

border: 0}

svg:not(:root) {overflow: hidden}

figure {margin: 0}

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}

button, input, select, textarea {
	font-family: inherit;
	font-size: 100%;
	margin: 0;}

button,input {line-height: normal;}

button,
input[type="button"],
input[type="reset"], 
input[type="submit"] {
-webkit-appearance: button;
cursor: pointer;}/
}

button[disabled],
input[disabled] {cursor: default}

input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box;
    padding: 0;
}

input[type="search"] {
    -webkit-appearance: textfield;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
-webkit-appearance: none}

button::-moz-focus-inner,
input::-moz-focus-inner {
border: 0;
padding: 0}

textarea {
overflow: auto;
vertical-align: top;}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

.clearfix:after {
	content: '';
	display: block;
	clear: both;
	height:0;
}

div,h1,h2,h3,h4,h5,h6,p,ul,ol,dl,table,pre {
	box-sizing: border-box;	
}
/* リセット記述終了 */

body{
	width: 100%;
	/* background-image:url(../images/tmpl4a.jpg);
	background-size: 1200px ;
	background-position: top center;
	background-repeat: no-repeat; */
	background-color: #fff;
	/* min-height: 8000px; */
}
.brsp{
  display: none;
}
a:hover{
	opacity: .5;
}

/* pc用固定疑似背景 */
.outerbg {
  position: relative;
  z-index: 0;
}
.outerbg::before {
  content: "";
  position: fixed;
  inset: 0;
  background-image:url(../images/outer_bg1.webp);
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
  z-index: -1;
}


.outerWrap{
  width: 100%;
  position: relative;
  height: 100vh;
  height: 100dvh;
  /* background-image:url(../images/outer_bg1.webp);
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat; */
}
.outerLogoDIV{
  position: fixed;
  top: 32px;
  left: 36px;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  z-index: 100;
  width: calc(50% - 267px);
}
.outerLogo{
  width: 275px;
  
}
.outerLangDIV{
  font-size: 1.1em;
  color: var(--green1);
  line-height: 1em;
  text-align: left;
  font-weight: normal;
  letter-spacing: 0.2em;
  margin-left: 16px;
}
.outerLangBTN{
  font-size: 0.8em;
  color: var(--green1);
  text-decoration: none;
  margin: 0 0 0 8px ;
}
.outerLangCurrent{
  font-size: 142%;
}
@media screen and (max-width: 1599px) {
  .outerLogo{
    width: 240px;
  }
}
@media screen and (max-width: 1399px) {
  .outerLogoDIV{
    top: 12px;
    left: 1.5%;
  }
  .outerLogo{
    width: 65%;
    max-width: 200px;
  }
  .outerLangDIV{
    font-size: 1.0em;
  }
}
@media screen and (max-width: 1279px) {
  .outerLogoDIV{
    display: block;
  }
  .outerLangDIV{
    display: block;
    margin-left: -8px;
    margin-top: 3px;
  }
}
.fixMenuBTN{
  width: 53px;
  position: fixed;
  top: 24px;
  right: 24px;
  z-index: 1100;
}
@media screen and (max-width: 1023px) {
  .fixMenuBTN{
    width: 42px;
    top: 16px;
    right: 16px;
    filter: 
    drop-shadow(0px 0px 4px rgba(255, 255, 255, 1))
    drop-shadow(0px 0px 3px rgba(255, 255, 255, 1))
    drop-shadow(0px 0px 2px rgba(255, 255, 255, 1))
    ;
  }
  .outerLogoDIV{
    top: 12px;
    left: 12px;
  }
  .outerLogo{
    width: 160px;
    max-width: initial;
    filter: 
    drop-shadow(0px 0px 5px rgba(255, 255, 255, 1))
    drop-shadow(0px 0px 2px rgba(255, 255, 255, 1))
    drop-shadow(0px 0px 2px rgba(255, 255, 255, 1))
    ;
  }
  .outerLangDIV{
    display: none;
  }
}
.outerContainer{
  position: relative;
  width: 100%;
  /* display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: space-between;
  align-items: stretch; */
  height: 100%;
}
.outerLeft{
  width: calc(50% - 267px);
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 20;
}

.outerRight{
  width: calc(50% - 267px);
  height: 100%;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 20;
}
.contentAreaWrap{
  width: 100%;
  max-width: 533px;
  
  margin: auto;
  height: calc(100% - 58px);
  top: 58px;
  position: relative;
  z-index: 10;
  
  
}
.contentArea{
  width: 100%;
  border-radius: 64px 64px 0 0;
  margin: auto;
  box-shadow: 0 20px 55px rgba(0, 0, 0, 0.2);
  background-color: #fff;
  box-shadow: 0 20px 55px rgba(0, 0, 0, 0.2);
  overflow: hidden;
  /* background-image:url(../images/tmpl-top_half.jpg);
  background-size: 100%;
  background-position: top -118px center;
  background-repeat: no-repeat; */
}

@media screen and (max-width: 1023px) {
  .outerLeft{
    display: none;
  }
  .outerRight{
    display: none;
  }
  .contentAreaWrap{
    width: 100%;
    max-width: initial;
    height: initial;
    top: 0;
  }
  .contentArea{
    border-radius: 0;
    box-shadow: 0;
    font-size: 3vw;
  }
}
.outerNewsArea{
  position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.outerNewsThumbDIV{
  width: 286px;
  position: relative;
  border: 2px solid var(--green1);
  padding: 8px;
  border-radius: 32px;
}
.outerNewsThumb{
  border-radius: 20px ;
  display: block;
}
.outerNewsIconNew{
  width: 80px;
  position: absolute;
  top: -20px;
  right: -40px;
}
.outerNewsLinkBTN1{
  width: 232px;
  display: block;
  margin: 42px auto 0 auto;
}
.outerFooterArea{
  margin: 13vh auto 0 auto;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 8px;
}
.outerSNSUL{
  width: 250px;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  margin: auto;
}
.outerSNSUL li{
  width: 18%;
}
.outerFooterCopy{
  font-size: 9px;
  color: var(--green1);
  line-height: 1em;
  text-align: center;
  font-weight: normal;
  margin: 23px auto 0 auto;
}
@media screen and (max-width: 1279px) {
  .outerNewsThumbDIV{
    width: 200px;
    border: 2px solid var(--green1);
    padding: 6px;
    border-radius: 28px;
  }
  .outerNewsThumb{
    border-radius: 16px ;
  }
  .outerNewsIconNew{
    width: 60px;
    top: -20px;
    right: -20px;
  }
  .outerNewsLinkBTN1{
    width: 100%;
    margin: 28px auto 0 auto;
  }
  .outerSNSUL{
    width: 200px;
  }
  .outerSNSUL li{
    width: 19%;
  }
  .outerFooterCopy{
    margin: 18px auto 0 auto;
  }
}
.outerMenu{
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  
  display: flex;
  flex-wrap: wrap;
  flex-direction: row-reverse;
  justify-content: space-between;
  align-items: flex-start;
  width: calc(100% - 64px);
  max-width: 370px;
  margin-left: 0px;
  margin-right: 0px;
}
.outerMenu li{
  color: #3E3A39;
  writing-mode: vertical-rl;
  text-orientation: mixed;
  line-height: 1.8;
  letter-spacing: 0.35em;
}
.outerMenu li a{
  font-size: 1em;
  color: #3E3A39;
  line-height: 1em;
  font-weight: normal;
  text-decoration: none;
  height: 188px;
  display: block;
  padding: 0.4em 0.2em;
  position: relative;
}
.outerMenuLiCurrent{
  color: #fff!important;
}
.outerMenuLiCurrent::before {
  /* 背景のみを乗算にする */
  content: "";
  position: absolute;
  inset: 0;
  background-color: var(--green1);
  mix-blend-mode: multiply;
  z-index: -1;
}
@media screen and (max-width: 1224px) {
  .outerMenu{
    width: calc(100% - 40px);
  }
  .outerMenu li a{
    font-size: 0.9em;
    height: 168px;
  }
}
.topKVArea{
  width: 100%;
  position: relative;
  height: 80vh;
  background-image:url(../images/top_s1_kv1.webp);
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
  color: #fff;
}
.topKVLogo{
  width: 13.9%;
  display: block;
  position: absolute;
  margin: auto;
  top: 6.9%;
  left: 50%;
  transform: translateX(-50%);
}
.topKVTextDIV1{
  position: absolute;
  width: 90%;
  bottom: 5.2%;
  left: 7.5%;
}
.topKVP1{
  font-size: 1.2rem;
    color: #fff;
    line-height: 2em;
    text-align: left;
    font-weight: normal;
    text-shadow: 0.1em 0.1em 0.5em rgba(0,0,0,1),0.1em 0.1em 0.5em rgba(0,0,0,1),0.1em 0.1em 0.5em rgba(0,0,0,1);
}
.topKVP1Span1{
  font-size: 108%;
  letter-spacing: 0.2em;
  line-height: 1.3em;
  display: block;
}
@media screen and (max-width: 1023px) {
  .topKVArea{
    height: 100svh;
  }
  .topKVLogo {
    top: 15%;
    width: 11.9%;
  }
  .topKVTextDIV1{
    bottom: 5.2%;
    left: 6.5%;
  }
  .topKVP1{
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 639px) {
  .topKVLogo {
    top: 20%;
    width: 13.9%;
  }

  .topKVP1{
    font-size: 4vw;
  }
}



/* top ニュース */
.topNewsArea{
  width: 100%;
  padding: 52px 0 0 0;
  margin-bottom: 75px;
}
.topNewsMidashi{
  font-size: 2rem;
  color: #000;
  line-height: 1em;
  text-align: center;
  font-weight: 600;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 533px) {
  .topNewsMidashi{
    font-size: 6vw;
  }
}
.topNewsCarouselWrap{
  width: 100%;
  margin: 25px auto 0 auto;
}
.topNewsCarouselContainer{
  width: 100%;
  /* height: 207px; */
}
.topNewsCarouselContainer a{
  text-decoration: none;
}
.toptokusetsuCarouselContainer a{
  text-decoration: none;
}
.topNewsCarouseldivThumbBorder{
  border: 1px solid #ddd; 
}
.toptokusetsuCarouseldivThumbBorder{
  border: 1px solid #bbb;
}
.topNewsCarouseldivThumbDIV{
  width: 100%;
  aspect-ratio: 800/346;
}
.topNewsCarouseldivThumbDIV img{
  width: 100%;
	height: 100%!important;
	object-fit: contain;
	object-position: 50% 50%;
}
.toptokusetsuCarouseldivThumbDIV{
  width: 100%;
  aspect-ratio: 752/1064;
}
.toptokusetsuCarouseldivThumbDIV img{
  width: 100%;
	height: 100%!important;
	object-fit: contain;
	object-position: 50% 50%;
}
.topNewsCarouseldivDate{
  font-size: 0.8rem;
  color: #808080;
  line-height: 1em;
  text-align: center;
  font-weight: normal;
  margin: 12px auto 0 auto;
}
.topNewsCarouseldivTitle{
  font-size: 1.0rem;
  color: #000;
  line-height: 1.2em;
  text-align: center;
  font-weight: normal;
  margin: 5px auto 20px auto;
  letter-spacing: 0.1em;
}
.toptokusetsuCarouseldivTitle{
  font-size: 1.0rem;
  color: #20442E;
  line-height: 1.2em;
  text-align: center;
  font-weight: normal;
  margin: 5px auto 0 auto;
  letter-spacing: 0.1em;
}
.slick-num,.slick-num2{
  /* トップのニュースと特設ページの番号表示 */
  width: 175px;
  font-size: 1.2rem;
  color: #000;
  line-height: 1em;
  text-align: center;
  font-weight: normal;
  padding-bottom: 0.3em;
  margin: -44px auto 0 auto;
}
@media screen and (max-width: 533px) {
  .topNewsCarouseldivTitle{
    font-size: 0.9rem;
  }
  .toptokusetsuCarouseldivTitle{
    font-size: 0.9rem;
  }
}




.topNewsCarouseBTNFlex{
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}
.topNewsCarouseBTNPrev{
  width: 54px;
}
.topNewsCarouseBTNNext{
  width: 54px;
}
.topNewsCarouseBTNNum{
  width: 175px;
  font-size: 1.2rem;
  color: #000;
  line-height: 1em;
  text-align: center;
  font-weight: normal;
  padding-bottom: 0.3em;
}






/* top 特設ページ */
.toptokusetsuArea{
  width: 100%;
  padding: 43px 0 90px 0;
  background-color: #DAE2D4;
}
.toptokusetsuMidashi{
  font-size: 2rem;
  color: #20442E;
  line-height: 1em;
  text-align: center;
  font-weight: 600;
  letter-spacing: 0.2em;
}
.toptokusetsuCarouselWrap{
  width: 100%;
  margin: 30px auto 0 auto;
}
.toptokusetsuCarouselContainer{
  width: 100%;
  height: 350px;
}
@media screen and (max-width: 1023px) {
  .toptokusetsuArea{
    padding: 43px 0 13vw 0;
  }
}
@media screen and (max-width: 899px) {
  .toptokusetsuArea{
    padding: 43px 0 10vw 0;
  }
}
@media screen and (max-width: 639px) {
  .toptokusetsuArea{
    padding: 43px 0 0vw 0;
  }
}
@media screen and (max-width: 533px) {
    .toptokusetsuArea{
      padding: 9vw 0 12vw 0;
    }
    .toptokusetsuMidashi{
        font-size: 6vw;
    }
}
@media screen and (max-width: 399px) {
    .toptokusetsuArea{
      padding: 9vw 0 5vw 0;
    }
}
@media screen and (max-width: 369px) {
    .toptokusetsuArea{
      padding: 9vw 0 2vw 0;
    }
}




.topIntroArea{
  margin: 90px auto 0 auto;
}
@media screen and (max-width: 1023px) {
  .topIntroArea {
    margin: 0 auto 0 auto;
  }
}
@media screen and (max-width: 533px) {
  .topIntroArea {
    margin: 13vw auto 0 auto;
  }
}
.topIntroAreaHead{
  width: 100%;
  position: relative;
  height: 233px;
  background-size: contain;
  background-position: bottom center;
  background-repeat: no-repeat;
}
.topIntro1 .topIntroAreaHead{
  background-image:url(../images/top_s3_1_bg_head.webp);
}
.topIntro2 .topIntroAreaHead{
  background-image:url(../images/top_s3_2_bg_head.webp);
}
.topIntro3 .topIntroAreaHead{
  background-image:url(../images/top_s3_3_bg_head.webp);
}
.topIntro4 .topIntroAreaHead{
  background-image:url(../images/top_s3_4_bg_head.webp);
}
.topIntroChara1{
  width: 400px;
  position: absolute;
}
.topIntro1 .topIntroChara1,.topIntro3 .topIntroChara1{
  top: 50%;
  left: 4%;
  transform: translateY(-50%);
}
.topIntro2 .topIntroChara1,.topIntro4 .topIntroChara1{
  top: 50%;
  right: 4%;
  transform: translateY(-50%);
}
 .topIntroMidashi1{
  width: 437px;
  position: absolute;
 }
.topIntro1 .topIntroMidashi1,.topIntro3 .topIntroMidashi1{
  top: 50%;
  right: 4%;
  transform: translateY(-50%);
}
.topIntro2 .topIntroMidashi1,.topIntro4 .topIntroMidashi1{
  top: 50%;
  left: 4%;
  transform: translateY(-50%);
}
.topIntroMidashi1 img{
  display: block;
  margin: 0;
}
@media screen and (max-width: 1023px) {
  .topIntroAreaHead{
    height: 39vw;
  }
}
@media screen and (max-width: 533px) {
  .topIntroChara1{
    width: 75%;
  }
  .topIntroMidashi1{
    width: 82%;
  }
}








.topIntroAreaIMGDIV{
  width: 100%;
}
.topIntroAreaIMGDIV img{
  width: 100%;
  display: block;
  margin: 0 auto;
}
.topIntroAreaFoot{
  width: 100%;
  display: block;
  position: relative;
  height: 388px;
  /* background-color: rgba(255,255,0,0.2); */
  overflow: hidden;
  background-size: contain;
  background-position: top center;
  background-repeat: no-repeat;
}
.topIntro1 .topIntroAreaFoot{
  background-image:url(../images/top_s3_1_bg_foot.webp);
}
.topIntro2 .topIntroAreaFoot{
  background-image:url(../images/top_s3_2_bg_foot.webp);
}
.topIntro3 .topIntroAreaFoot{
  background-image:url(../images/top_s3_3_bg_foot.webp);
}
.topIntro4 .topIntroAreaFoot{
  background-image:url(../images/top_s3_4_bg_foot.webp);
}
.topIntro1 .topIntroAreaFootLink1{
  width: 44px;
  position: absolute;
  top: 15.3%;
  left: 18%;
}
.topIntro2 .topIntroAreaFootLink1{
  width: 44px;
  position: absolute;
  top: 45%;
  right: 11.5%;
}
.topIntro3 .topIntroAreaFootLink1{
  width: 84px;
  position: absolute;
  top: 42%;
  left: 14.7%;
}
.topIntro4 .topIntroAreaFootLink1{
  width: 44px;
  position: absolute;
  top: 32.3%;
  right: 12%;
}
.topIntroAreaFootLink1 img{
  display: block;
  margin: 0;
}
.topIntroAreaFootText1{
  width: 330px;
  position: absolute;
  top: 10%;
}
.topIntro1 .topIntroAreaFootText1{
  left: 50%;
}
.topIntro2 .topIntroAreaFootText1{
  left: 7%;
}
.topIntro3 .topIntroAreaFootText1{
  left: 40%;
}
.topIntro4 .topIntroAreaFootText1{
  left: 7%;
}
.topIntroAreaFootText1 img{
  display: block;
  margin: 0;
}
@media screen and (max-width: 1023px) {
  .topIntroAreaFoot{
      height: 460px;
    }
    .topIntroAreaFootLink1{
    top: 20.3%;
  }
  .topIntroAreaFootText1{
    top: 15%;
  }
}
@media screen and (max-width: 533px) {
  .topIntroAreaFoot{
    height: 65vw;
  }
  .topIntro1 .topIntroAreaFootLink1{
    width: 8vw;
    top: 15.3%;
    left: 18%;
  }
  .topIntro2 .topIntroAreaFootLink1{
    width: 8vw;
    top: 40.3%;
  }
  .topIntro3 .topIntroAreaFootLink1{
    width: 16vw;
    top: 35.3%;
    left: 13%;
  }
  .topIntro4 .topIntroAreaFootLink1{
    width: 8vw;
    top: 25.3%;
  }
  .topIntroAreaFootText1{
    width: 59vw;
    top: 12%;
    left: 50%;
  }
}









.topIntroSubArea{
  width: 100%;
  background-image:url(../images/top_s4_bg.webp);
  background-size: 512px;
  background-position: center center;
  background-repeat: repeat;
  padding: 86px 0 0 0;
  margin: 50px auto 0 auto;
}
.topIntroSubDIV1{
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  padding-bottom: 110px;
}
.topIntroSubDIV1Left1{
  width: 29.5%;
  padding: 26px 0 0 0;
}
.topIntroSubDIV1Left2{
  width: 29.5%;
  padding: 8px 0.5em 0 0;
}
.topIntroSubDIV1Right{
  width: 70.5%;
}
.topIntroSubDIV1LeftP1{
  writing-mode: vertical-rl;
  line-height: 1.8;   /* 字間（縦方向） */
  letter-spacing: 0.05em;
  margin: auto;
  background-image:url(../images/top_s4_hr1.webp);
  background-size: 2.2em;
  background-position: top right 0.2em;
  background-repeat: repeat;
  font-size: 1.1rem;
  color: #000;
  line-height: 2.2em;
  text-align: left;
  font-weight: normal;
}
.topIntroSubDIV1ThumbDIV{
  width: 100%;
  height: 345px;
  border-radius: 93px 0 0 0;
  overflow: hidden;
}
.topIntroSubDIV1ThumbDIV img{
  width: 100%;
  height: 100%;
  object-fit: cover;
	object-position: 50% 50%;
}
.topIntroSubDIV1LinkP1{
  font-size: 2.1rem;
  color: #000;
  line-height: 1em;
  text-align: left;
  font-weight: normal;
  letter-spacing: 0.2em;
  margin: 0.5em 0.7em 0 0;
}
.topIntroSubDIV1LinkP1 a{
  text-decoration: none;
  color: #000;
  display: block;
  width: 100%;
  background-image:url(../images/top_s4_btn1.webp);
  background-size: contain;
  background-position: center right;
  background-repeat: no-repeat;
  padding: 0.1em 0;
}
@media screen and (max-width: 533px) {
  .topIntroSubDIV1{
    padding-bottom: 22vw;
  }
  .topIntroSubDIV1ThumbDIV{
    height: 75vw;
    border-radius: 16vw 0 0 0;
  }
  .topIntroSubDIV1LeftP1{
      background-size: 6.6vw;
      font-size: 3.6vw;
      line-height: 1.9em;
  }
  .topIntroSubDIV1LinkP1{
    font-size: 6.3vw;
    margin: 0.5em 0.7em 0 0;
  }


}
.footerArea{
  width: 100%;
  max-width: 534px;
  padding: 50px 0 0 0;
  margin: auto;
}
.footerLogo img{
  width: 20%;
  display: block;
  margin: auto;
}
.footerAddressP{
  margin: 18px auto 0 auto;
  font-size: 0.9rem;
  color: #000;
  line-height: 1.5em;
  text-align: center;
  font-weight: normal;
  padding: 0 1em;
}
.footerBTNFlex1{
  width: 70%;
  margin: 22px auto 0 auto;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}
.footerBTNFlex1 a{
  width: 46%;
  background-color: #4D7256;
  color: #fff;
  text-decoration: none;
  display: block;
  background-image: url(../images/footer_btn_arrow.webp);
  background-size: 5%;
  background-position: center right 3%;
  background-repeat: no-repeat;
  padding: 0.7em 0;
  font-size: 0.9rem;
  line-height: 1em;
  text-align: center;
  font-weight: normal;
}
.footerSNSUL{
  width: 53%;
  margin: 25px auto 0 auto;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}
.footerSNSUL li{
  width: 13%;
}
.footerBTNFlex2{
  width: 70%;
  margin: 22px auto 0 auto;
  display: block;
}
.footerBTNFlex2 a{
  width: 100%;
  background-color: #4D7256;
  color: #fff;
  text-decoration: none;
  display: block;
  background-image: url(../images/footer_btn_arrow.webp);
  background-size: 2.4%;
  background-position: center right 3%;
  background-repeat: no-repeat;
  padding: 1.6em 0;
  font-size: 0.9rem;
  line-height: 1em;
  text-align: center;
  font-weight: normal;
  margin: 0 auto 6px auto;
}
@media screen and (max-width: 533px) {
  .footerLogo img{
    width: 23%;
  }
  .footerAddressP{
    margin: 18px auto 0 auto;
    font-size: 0.9em;
    color: #000;
    line-height: 1.5em;
    text-align: center;
    font-weight: normal;
    padding: 0 1em;
  }
  .footerBTNFlex1{
    width: 80%;
    margin: 22px auto 0 auto;
  }
  .footerBTNFlex1 a{
    width: 46%;
    padding: 1.0em 0;
    font-size: 1.1em;
    background-size: 7%;
  }
  .footerSNSUL{
    width: 64%;
    margin: 25px auto 0 auto;
  }
  .footerSNSUL li{
    width: 14%;
  }
  .footerBTNFlex2{
    width: 80%;
    margin: 22px auto 0 auto;
  }
  .footerBTNFlex2 a{
    background-size: 3.2%;
    padding: 1.4em 0;
    font-size: 1.1em;
    margin: 0 auto 6px auto;
  }
}
.footerAreaBottom{
  width: 100%;
  background-image:url(../images/footer_bg.gif);
  background-size: 100% 100%;
  background-position: center bottom;
  background-repeat: no-repeat;
  padding: 77px 0 16px 16px;
  margin: 37px auto 0 auto;
}
.footerAreaP1{
  font-size: 1rem;
  color: #fff;
  line-height: 1em;
  text-align: left;
  font-weight: normal;
}
.footerAreaBottomUL{
  margin: 20px 0 0 0;
}
.footerAreaBottomUL a{
  font-size: 0.5rem;
  color: #fff;
  line-height: 1em;
  text-align: left;
  font-weight: normal;
  margin: 0.8em 0 0 0;
  display: block;
  text-decoration: none;
}
.footerAreaBottomRightP{
  font-size: 0.5rem;
  color: #fff;
  line-height: 1em;
  text-align: left;
  font-weight: normal;
  margin: 0.8em 0 0 0;
  letter-spacing: 0.1em;
}