@charset "UTF-8";
/*header {position:sticky;top:0;z-index:3;}*/
header {
  position:sticky;
  top:0;
  z-index:100;
  letter-spacing: 0;
  line-height: normal;
  letter-spacing: 0;
  line-height: normal;
}

/* header h1,
header h2,
header h3,
header h4,
header h5 {
} */

header .h_in{max-width:100%;width:100%;margin:0 auto;padding:0 30px;display:flex;justify-content: space-between;align-items: flex-end;position:relative;z-index: 100;}
header .h_in a {
  display: block;
}
header .h_in h1{
  /* width:161px; */
  width: min(22vw, 161px);
}
header .h_in .flow_nav {margin:0 0 0 auto;padding:0 74px 0 10px;}
header .h_in .flow_nav ul{display:flex;text-align:center;margin:0 0 0 -4px;}
header .h_in .flow_nav ul li{background-color: rgba(255,255,255,0.55);margin:0 0 0 4px;line-height:1.5;flex: 1;min-width:165px;}
header .h_in .flow_nav ul li a{font-size:11px;font-weight:300;padding:15px 0;color:#0000ff;display:block;transition:opacity 0.3s linear!important;-webkit-transition:opacity 0.3s linear!important;-moz-transition:opacity 0.3s linear!important;}
header .h_in .flow_nav ul li a:hover{opacity:0.5!important;filter:alpha(opacity=50);-moz-opacity:0.5!important;}
header .h_in .flow_nav ul li:first-child{border-radius:0 0 0 10px;}
header .h_in .flow_nav ul li:first-child a{color:#ff00ff;}
header .h_in .flow_nav ul li:last-child{border-radius:0 0 10px 0;}
header .h_in .flow_nav ul li:last-child a{color:#ff8500;}
header .h_in .flow_nav ul li span{display:block;font-size:18px;font-weight:500;}

footer {
  color: #231815;
  font-family: "Roboto", "Noto Sans JP", 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", 'メイリオ', 'Meiryo', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-size: 100%;
  font-weight: normal;
  -webkit-text-size-adjust: 100%;
}

footer h1,
footer h2,
footer h3,
footer h4,
footer h5 {
  letter-spacing: 0;
  line-height: normal;
}

footer .f_in {background-image: linear-gradient(90deg, rgba(255, 255, 255, 0) 50%, rgba(255, 255, 255, 1) 51%, rgba(255, 255, 255, 1));}
footer .f_in .f_in_in{padding:0 30px;max-width:1340px;margin:0 auto;overflow: hidden;}
footer small{display:block;max-width:1340px;margin:0 auto;width:100%;padding:20px 30px;font-size: 100%;font-size: smaller;}
footer .f_in .f_in_in .fnav_out{padding:70px;background:#fff;border-radius:15px 0 0 15px;}
footer .f_in .f_in_in .fnav{display:flex;justify-content: space-between;margin:0 0 0 -70px;}
footer .f_in .f_in_in .fnav_in{padding:0 0 0 70px;}
footer .f_in .f_in_in .fnav_in:nth-child(2){padding:0 0 0 30px;}

footer .f_in .f_in_in .fnav_in h3{font-size:19px;font-weight:500;padding:0 0 18px 0;line-height:1.5;}
footer .f_in .f_in_in .fnav_in li{font-size:15px;padding:0 0 10px 0;position: relative;}
footer .f_in .f_in_in .fnav_in li a{position: relative;transition: all 0.2s;}
footer .f_in .f_in_in .fnav_in li a.ico_blank{display:table;padding:0 20px 0 0;}
footer .f_in .f_in_in .fnav_in li a:hover{color: #149f3a;}
footer .f_in .f_in_in .f_logo{width:221px;margin:0 auto;padding:0 30px 40px 30px;}
.ico_blank::before {position: absolute;content: "";background: url(../img/common/ico_blank.svg) no-repeat;width: 11px;height: 10px;right: 0;top: 50%;transform: translateY(-50%);transition: 0.5s;margin-top: -1px;}


.menu-container {position: fixed;max-width:100%;top:0;/*right: calc(50% - 640px);*/right:30px;margin:0 auto;width:min(8vw,54px);height:12px;z-index:999;}
@media only screen and (max-width:1340px){
  .menu-container {right: 30px;}
}

.menu-button {position: absolute;top:20px;right:0;display: block;cursor: pointer;z-index: 2;transition:opacity 0.3s linear!important;-webkit-transition:opacity 0.3s linear!important;-moz-transition:opacity 0.3s linear!important;}
.menu-button:hover{opacity:0.5!important;filter:alpha(opacity=50);-moz-opacity:0.5!important;}
.bar {display: block;width: min(8vw,54px);height: 2px;margin: 8px 0;background-color: #333;transition: 0.4s;}
/* #menu-toggle:checked ~ .menu-button .bar:nth-child(1) {transform: rotate(25deg) translate(0px, 0px);}
#menu-toggle:checked ~ .menu-button .bar:nth-child(2) {transform: rotate(-25deg) translate(5px, -8px);} */
/* #menu-toggle:checked ~ .menu-button .bar:nth-child(1) {transform: rotate(45deg) translate(3px, 0px);}
#menu-toggle:checked ~ .menu-button .bar:nth-child(2) {transform: rotate(-45deg) translate(6px, -5px);} */
#menu-toggle:checked ~ .menu-button .bar:nth-child(1) {transform: rotate(45deg) translate(4px, 6px);}
#menu-toggle:checked ~ .menu-button .bar:nth-child(2) {transform: rotate(-45deg) translate(0px, -4px);}
#menu-toggle {display: none;position: fixed;}
.menu_out {position: fixed;top: -100%;right: 0;width: 100%;height:100%;transition: 0.5s;z-index: 1;overflow-y: auto;}
.menu_out .menu {background-color: #fff;}
#menu-toggle:checked ~ .menu_out {top: 0;}
.menu_out .menu .m_logo{border-bottom:1px solid #000;}
.menu_out .menu .m_logo .m_logo_in{max-width:100%;width:100%;margin:0 auto;padding:25px 30px;}
.menu_out .menu .m_logo div{width:161px;}
.menu_out .menu .menu_in{max-width:1340px;margin:0 auto;padding:60px 30px 20px 30px;display:flex;justify-content: center;}
.menu_out .menu .menu_in .menu_text a:hover {color: #149f3a;}
.menu_out .menu .menu_in nav {display:flex;flex-wrap: wrap;max-width:730px;width:100%;}
.menu_out .menu .menu_in nav ul {width:50%;}
.menu_out .menu .menu_in nav ul li {padding:0 0 40px 0;}
.menu_out .menu .menu_in nav ul li a {text-decoration: none;color: #333;}
.menu_out .menu .menu_in nav ul li a.ico_blank{display:table;padding:0 18px 0 0;}
.menu_out .menu .menu_in nav ul li .menu_main{font-size:28px;font-weight:500;padding:0 0 10px 0;font-family: "Roboto", sans-serif;}
.menu_out .menu .menu_in nav ul li .menu_sb{font-size:18px;padding:0 0 10px 0;}
.menu_out .menu .menu_in nav ul li .menu_sb a{position:relative;transition: all 0.2s;}
.menu_out .menu .menu_in nav ul li .menu_sb a:hover{color:#149f3a;}
.menu_out .menu .menu_in .flow_nav {padding:10px 0 0 0;width:250px;}
.menu_out .menu .menu_in .flow_nav ul li{line-height:1.5;margin:0 0 40px 0;}
.menu_out .menu .menu_in .flow_nav ul li a{font-weight:300;padding:15px 25px;color:#0000ff;display:block;border:1px solid #0000ff;border-radius:10px;transition: all 0.2s;}
.menu_out .menu .menu_in .flow_nav ul li a:hover{background:#0000ff;color:#fff;}
.menu_out .menu .menu_in .flow_nav ul li:first-child a{font-weight:300;color:#ff00ff;border:1px solid #ff00ff;}
.menu_out .menu .menu_in .flow_nav ul li:first-child a:hover{background:#ff00ff;color:#fff;}

.menu_out .menu .menu_in .flow_nav ul li:last-child a{font-weight:300;color:#ff8500;border:1px solid #ff8500;}
.menu_out .menu .menu_in .flow_nav ul li:last-child a:hover{background:#ff8500;color:#fff;}

.menu_out .menu .menu_in .flow_nav ul li span.sp1{display:block;font-size:12px;}
.menu_out .menu .menu_in .flow_nav ul li span.sp2{display:block;font-size:28px;font-weight:500;font-family: "Roboto", sans-serif;}
.menu_out .menu .menu_in .flow_nav ul li span.sp3{display:block;font-size:15px;font-weight:500;font-family: "Roboto", sans-serif;}

.bg-animate {
  background-image: linear-gradient(150deg, rgba(140, 243, 114, 1) 10%, rgba(182, 252, 210, 1) 24%, rgba(142, 219, 132, 1) 40%, rgba(180, 252, 209, 1) 68%, rgba(144, 197, 186, 1) 90%);
  background-size: 400% 400%;
  animation: GradietionAnimation 3s infinite;
  width:100%;
  height:100%;
  position: fixed;
  top: 0;
  left: 0;
  content: '';
  z-index: -2;
}

.hikari {
  background: url(../img/common/hikari.webp) center 0 repeat-y;
  animation: hikariAnimation 8s infinite;

  background-size:120%;
  width:100%;
  height:100%;
  position: fixed;
  top: 0;
  left: 0;
  content: '';
  z-index: -1;
  mix-blend-mode: overlay;
  transform:translate3d(0,0,0);
  opacity: 0.9;
}

.bg2 {
  background-image: linear-gradient(150deg, rgba(169, 246, 165, 1)10% , rgba(219, 252, 151, 1) 24%, rgba(127, 247, 83, 1) 40%, rgba(174, 250, 211, 1)90%);
  background-size: 400% 400%;
  animation: GradietionAnimation 3s ease infinite;
  width:100%;
  height:100%;
  /* position: fixed; */
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  z-index: -2;
}

@keyframes GradietionAnimation { 
  0%{background-position:0% 50%;}
  50%{background-position:100% 50%;}
  100%{background-position:0% 50%;}
}
@keyframes hikariAnimation { 
  0%{transform: scale(1, 1);}
  50%{transform: scale(1.3, 1.3);}
  100%{transform: scale(1, 1);}
}


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

  header {position:static;}
  header .h_in h1{
    padding:15px 0 0 0;
    line-height: 1.3;
  }
  header .h_in{padding:0 15px;display:block;}
  header .h_in .flow_nav {margin:0;padding:15px 0 0 0;max-width:75%;}
  header .h_in .flow_nav ul li{min-width:0;margin:0 0 0 2px;}
  header .h_in .flow_nav ul li:first-child{border-radius:10px 0 0 10px;}
  header .h_in .flow_nav ul li:last-child{border-radius:0 10px 10px 0;}
  header .h_in .flow_nav ul li a{padding:15px 2px;font-size:10px;}
  header .h_in .flow_nav ul li span{font-size:17px;}

  footer .f_in .f_in_in .fnav_out{padding:40px 30px;}
  footer .f_in .f_in_in .fnav{margin:0 0 0 -40px;}
  footer .f_in .f_in_in .fnav_in{padding:0 0 0 45px;}
  footer .f_in .f_in_in .fnav_in:nth-child(2){padding:0 0 0 10px;}

}


@media only screen and (max-width:768px){
	.pcnone, .sp{display:block!important;}
	.spnone, .pc{display:none!important;}

  footer .f_in {background-image: none;}
  footer .f_in .f_in_in{padding:0 0 0 15px;}
  footer small{text-align:center;padding:20px 15px;}
  footer .f_in .f_in_in .fnav{flex-wrap: wrap;margin:0 0 0 -15px;}
  footer .f_in .f_in_in .fnav_in{padding:0 15px 0 15px;width:50%;}
  footer .f_in .f_in_in .fnav_in:nth-child(odd) {width:58%;}
  footer .f_in .f_in_in .fnav_in:nth-child(even) {width:42%;}
  footer .f_in .f_in_in .fnav_in:nth-child(2){padding:0 15px 0 15px;}
  footer .f_in .f_in_in .fnav_in h3{padding:40px 0 20px 0;}
  footer .f_in .f_in_in .fnav_in li{padding:0 0 10px 0;}
  footer .f_in .f_in_in .f_logo{padding:15px 0 20px 0;width:180px;}

  .menu_out .menu .m_logo .m_logo_in{padding:15px 15px;}
  .menu_out .menu .menu_in{padding:40px 15px 20px 15px;display:block;text-align:center;}
  .menu_out .menu .menu_in nav {display:block;max-width:100%;}
  .menu_out .menu .menu_in nav ul {width:100%;}
  .menu_out .menu .menu_in nav ul li{padding:0 0 30px 0;}
  .menu_out .menu .menu_in nav ul li.menu_text_li1{height:auto!important;}
  .menu_out .menu .menu_in nav ul li.menu_text_li2{height:auto!important;}
  .menu_out .menu .menu_in nav ul li.menu_text_li3{height:auto!important;}

  .menu_out .menu .menu_in nav ul li a.ico_blank {margin:0 auto;}
  .menu_out .menu .menu_in nav ul li .menu_main{padding:0 0 15px 0;}
  .menu_out .menu .menu_in .flow_nav {max-width:450px;width:80%;margin:0 auto;}
  .menu_out .menu .menu_in .flow_nav ul li{margin:0 0 20px 0;}
  .menu_out .menu .menu_in .flow_nav ul li a{padding:15px 15px;}







  .hikari {background: url(../img/common/hikari.webp) center 0 repeat-y;background-size:190%;}
  .hikari2 {background: url(../img/common/hikari.webp) center 0 repeat-y;background-size:190%;}

}


@media only screen and (max-width:480px){
	body{font-size:3.3vw;}

  header .h_in .flow_nav ul li a{font-size:1.4vw;padding:5px 0;}
  header .h_in .flow_nav ul li:first-child a{font-size:1.4vw;padding:5px 0;}
  header .h_in .flow_nav ul li:last-child a{font-size:1.4vw;padding:5px 0;}
  header .h_in .flow_nav ul li span{font-size:2.8vw;}

  footer .f_in .f_in_in .fnav_in h3{font-size:4vw;}
  footer .f_in .f_in_in .fnav_in li{font-size:3.5vw;}
  footer .f_in .f_in_in .f_logo{width:47vw;}
	footer small{font-size:3vw;}
	#wrapper footer {padding:80px 0 0 0;}
	footer small{font-size:3vw;}

  .menu_out .menu .menu_in nav ul li .menu_main{font-size:5vw;}
  .menu_out .menu .menu_in nav ul li .menu_sb{font-size:4vw;}
  .menu_out .menu .menu_in .flow_nav ul li span.sp1{font-size:2.3vw;}
  .menu_out .menu .menu_in .flow_nav ul li span.sp2{font-size:5vw;}
  .menu_out .menu .menu_in .flow_nav ul li span.sp3{font-size:3.7vw;}

}

.menu,
footer,
header {
  letter-spacing: 0;
  line-height: 1.8;
  font-family: "Roboto", "Noto Sans JP", 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", 'メイリオ', 'Meiryo', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  vertical-align:unset;
  font-feature-settings: normal;
}

.bg_beige {
  background: transparent;
  margin-top: -75px;
  /* z-index: -1; */
}

@media only screen and (max-width: 850px){
  .bg_beige {
    margin-top: -150px;
  }
}

@media only screen and (max-width: 750px){
  .bg_beige {
    margin-top: -195px;
  }
}

@media only screen and (max-width: 480px){
  .bg_beige {
    margin-top: -130px;
  }
  header .h_in .flow_nav {
    padding: 15px 0 0 0;
  }
}