@charset "UTF-8";

/*--------------------------------------------------------
Meltea 2021
--------------------------------------------------------*/
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td,figure{margin:0;padding:0;}
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}
input,button,textarea,select{margin:0;padding:0;background:none;border:none;border-radius:0;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}
html,body{margin:0;padding:0;width:100%;}
section,footer,header{margin:0;padding:0}
ul{list-style:none}ul li{vertical-align:top}
label {display: inline-block;margin-bottom: 0.5rem;}
button, input {overflow: visible;}
button, select {text-transform: none;}
table,tbody,tr,hh,td{margin:0;padding:0;}
input, button, select, optgroup, textarea {margin:0;font-family:inherit;font-size:inherit;line-height:inherit;}
textarea {overflow: auto;resize: vertical;}
input[type="radio"], input[type="checkbox"] {box-sizing:border-box;padding:0;}
input:-internal-autofill-selected{background-color:transparent;}
button:not(:disabled), [type="button"]:not(:disabled), [type="reset"]:not(:disabled), [type="submit"]:not(:disabled) {cursor: pointer;}
button, [type="button"], [type="reset"], [type="submit"] {-webkit-appearance: button;}
*, *::before, *::after {box-sizing: border-box;}
em {font-style: normal;}
a {outline: none;}a img {outline:none;}a:focus, *:focus {outline:none;}
a:link{text-decoration:none;}a:visited{text-decoration:none;}a:active{text-decoration:none;}
a:hover{
  text-decoration:none;
  opacity:0.7;
  transition:.4s;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}
html, body {height:100%;}
html{font-size:62.5%;}

/*
font-family: 'Poppins', sans-serif;
font-family: 'Shippori Mincho B1', serif;
*/
body{
  font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	font-size:1.2rem;
  font-weight:400;
	-webkit-text-size-adjust:100%;
  text-align:left;
  line-height:1.4;
	color:#000;
  height:100%;
  background-color:#fff;
}
img {
	width:100%;
	height:auto;
	vertical-align:bottom;
}
img[src$=".svg"]{
  width:100%;
  height:auto;
}
span.supText {
  font-size:50%;
  vertical-align: top;
  position: relative;
  top: -0.5em;
}

/* -------------- responsible -------------- */
.is_pc{display:block;}
.is_sp{display:none;}
@media screen and (max-width:767px){
	.is_pc{display:none;}
	.is_sp{display:block;}
}

/* -------------- link -------------- */
a {outline: none;}
a img {outline:none;border-style:none;}
a:focus, *:focus {outline:none;}
a:link {text-decoration:none;}
a:visited {text-decoration:none;}
a:active {text-decoration:none;}
a:hover{text-decoration:none;}


/*--------------------------------------------------------
animation
--------------------------------------------------------*/
.animation{
	opacity:0;
}
.fadeInDown {  
	-webkit-animation-fill-mode:both;
  -webkit-animation-duration:1.2s;
  -webkit-animation-name: fadeInDown;
	-ms-animation-fill-mode:both;
  -ms-animation-duration:1.2s;
  -ms-animation-name: fadeInDown;
	animation-fill-mode:both;
	animation-duration:1.2s;
	animation-name: fadeInDown;
	visibility: visible!important;
}
.anime_delay1{
	-moz-animation-delay: 0.3s;
	-webkit-animation-delay: 0.3s;
	-o-animation-delay: 0.3s;
}
.anime_delay2{
	-moz-animation-delay: 0.6s;
	-webkit-animation-delay: 0.6s;
	-o-animation-delay: 0.6s;
}
.anime_delay3{
	-moz-animation-delay: 0.9s;
	-webkit-animation-delay: 0.9s;
	-o-animation-delay: 0.9s;
}
.anime_delay4{
	-moz-animation-delay: 1.2s;
	-webkit-animation-delay: 1.2s;
	-o-animation-delay: 1.2s;
}
.anime_delay5{
	-moz-animation-delay: 1.5s;
	-webkit-animation-delay: 1.5s;
	-o-animation-delay: 1.5s;
}
@-webkit-keyframes fadeInDown {
	0% { opacity: 0; -webkit-transform: translateY(50px); }
	100% { opacity: 1; -webkit-transform: translateY(0); }
}
@keyframes fadeInDown {
	0% { opacity: 0; -webkit-transform: translateY(50px); -ms-transform: translateY(50px); transform: translateY(50px); }
	100% { opacity: 1; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }
}

/*--------------------------
wrapper
--------------------------*/
#wrapper{
	position:relative;
	width:100%;
	height:100%;
}
#main_conts{
  position:relative;
	width:100%;
}

/*--------------------------
header
--------------------------*/
#header{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:auto;
	z-index:110;
}
#header .header_conts{
	position:relative;
	margin:0 auto;
	padding:0;
	width:100%;
  max-width:1440px;
	height:100%;
}
#header .header_logo{
	position:fixed;
	width:47px;
  height:auto;
  bottom:20px;
  right:-100px;
  transition:0.5s;
}
#header .header_logo.sublogo_acrive{
  right:20px;
}
#header .header_logo a{
  display:block;
  opacity:1;
}
@media screen and (max-width:767px){
  #header .header_conts{
  }
	#header .header_logo{
    margin-right:-2vw;
    margin-bottom:0;
    width:8vw;
	}
}

/*menu_btn*/
#header .menu_btn{
  display:block;
	position:fixed;
	width:35px;
	height:35px;
	top:20px;
	right:20px;
	cursor:pointer;
	overflow:hidden;
	z-index:150;
}
#header .menu_btn a{
	position:relative;
	display:block;
	width:35px;
	height:35px;
	opacity:1;
	top:0;
	left:0;
}
#header .menu_btn a:hover{
  opacity:1;
}
#header .menu-trigger,#header .menu-trigger span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
#header .menu-trigger {
	position:relative;
	top:50%;
  left:50%;
	width:35px;
	height:26px;
  transform:translate(-50%,-50%);
}
#header .menu-trigger.hover{
	opacity:1;
}
#header .menu-trigger span {
	position:absolute;
	left:0;
	width:35px;
	height:2px;
	background-color:#000;
	border-radius:0;
}
#header .menu-trigger span:nth-of-type(1) {
	top:0;
}
#header .menu-trigger span:nth-of-type(2) {
	top:12px;
}
#header .menu-trigger span:nth-of-type(3) {
	bottom:0;
}
#header .menu-trigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(12px) rotate(-45deg);
	transform: translateY(12px) rotate(-45deg);
}
#header .menu-trigger.active span:nth-of-type(2) {
	opacity:0;
}
#header .menu-trigger.active span:nth-of-type(3) {
	-webkit-transform: translateY(-12px) rotate(45deg);
	transform: translateY(-12px) rotate(45deg);
}
/*hd_menu_conts*/
#hd_menu_conts{
	position:fixed;
	width:100%;
  max-width:400px;
	height:100%;/*100vh;*/
  /*height:-webkit-fill-available;
  min-height:100vh;*/
	top:0;
	right:-500px;
  background-image:url("../imgs/grad_menu.svg");
  background-repeat:no-repeat;
  background-position:center;
  background-size:cover;
	overflow:auto;
	z-index:100;
}
#hd_menu_conts .hd_menu{
	position:relative;
	text-align:center;
  height:100vh;
  height:-webkit-fill-available;
  /*height:-webkit-fill-available;
  min-height:100vh;*/
	opacity:0;
}
#hd_menu_conts .hd_menu a{
  display:block;
  width:100%;
}
#hd_menu_conts .hd_menu .hd_menu_list{
  position:relative;
  display:inline-block;
	margin:0;/*80px 0 80px 0;*/
  padding:80px 0;
	list-style:none;
  text-align:left;
  top:50%;
  transform:translate(0,-50%);
}
#hd_menu_conts .hd_menu .hd_menu_list li{
	position: relative;
	margin:0 0 30px 0;
	display:block;
}
#hd_menu_conts .hd_menu .hd_menu_list li a{
  display:inline;
  text-decoration:none;
  font-family: 'Poppins', sans-serif;
  font-size:32px;
  color:#fff;
  opacity:1;
}
#hd_menu_conts .hd_menu .hd_menu_list li:last-child{
  margin-bottom:0;
}
#hd_menu_conts .hd_menu a span{
  display:block;
  color:#fff;
  font-family: 'Shippori Mincho B1', serif;
  font-size:16px;
}
@media screen and (max-width:767px){
  #header .menu_btn{
    width:8vw;
    height:8vw;
    top:5vw;
    right:5vw;
  }
  #header .menu_btn a{
    width:8vw;
    height:8vw;
  }
  #header .menu-trigger {
    top:50%;
    left:50%;
    width:8vw;
    height:6vw;
    transform:translate(-50%,-50%);
  }
  #header .menu-trigger.hover{
    opacity:1;
  }
  #header .menu-trigger span {
    position:absolute;
    left:0;
    width:8vw;
    height:2px;
  }
  #header .menu-trigger span:nth-of-type(1) {
    top:0;
  }
  #header .menu-trigger span:nth-of-type(2) {
    top:2.65vw;
  }
  #header .menu-trigger span:nth-of-type(3) {
    bottom:0;
  }
  #header .menu-trigger.active span:nth-of-type(1) {
    -webkit-transform: translateY(2.65vw) rotate(-45deg);
    transform: translateY(2.65vw) rotate(-45deg);
  }
  #header .menu-trigger.active span:nth-of-type(3) {
    -webkit-transform: translateY(-2.65vw) rotate(45deg);
    transform: translateY(-2.65vw) rotate(45deg);
  }
  
  #hd_menu_conts{
    width:80vw;
    /*height:100vh;*/
    right:-100vw;
  }
  #hd_menu_conts .hd_menu .hd_menu_list{
    /*margin:10vw 0 10vw 7vw;*/
    margin:0;
    padding:0;
  }
  #hd_menu_conts .hd_menu .hd_menu_list li{
    margin:0 0 5vw 0;
  }
  #hd_menu_conts .hd_menu .hd_menu_list li a{
    font-size:2rem;
  }
  #hd_menu_conts .hd_menu a span{
    font-size:1.4rem;
  }
}

/*--------------------------
footer
--------------------------*/
#footer{
  position:relative;
  width:100%;
  height:345px;
  bottom:0;
	left:0;
  text-align:left;
  background-image:url("../imgs/grad_footer_bg.png");
  background-repeat:repeat-x;
  background-position:bottom 0 center;
  background-size:auto 345px;
}
#footer a{
  opacity:1;
}
#footer .footer_innr{
  position:relative;
  margin:0 auto;
  padding-top:135px;
  width:100%;
  max-width:1024px;
  height:100%;
}
#footer .logo_ft_meltea{
  display:inline-block;
  margin-bottom:45px;
  width:195px;
  height:auto;
}
#footer .logo_ft_meltea a{
  display:block;
}
#footer .ft_menu_list{
  margin-bottom:25px;
  display:flex;
  align-items:center;
  text-align:left;
}
#footer .ft_menu_list li {
  margin-right:28px;
  list-style:none;
}
#footer .ft_menu_list li:last-child{
  margin-right:0;
  margin-bottom:0;
}
#footer .ft_menu_list a{
  display: block;
  text-decoration: none;
  opacity:1;
}
#footer .logo_ft_morihan{
  width:98px;
  height:auto;
}
#footer .logo_kyoeiseicha{
  width:138px;
  height:auto;
}
#footer .txt_copyright{
  font-size:1.2rem;
  letter-spacing:0;
  font-feature-settings:"palt";
  color:#000;
}
/*pagetop*/
#pagetop{
  position:absolute;
  width:190px;
  height:310px;
  bottom:0;
  right:0;
  background-image:url("../imgs/grad_backtotop.svg");
  background-repeat:no-repeat;
  background-position:bottom -30px center;
  background-size:100% auto;
  transition: all 0.3s ease;
  cursor:pointer;
  z-index:2;
}
#pagetop a{
  display:block;
  width:190px;
  height:310px;
  opacity:1;
}
#pagetop .txt_pagetop{
  position:relative;
  width:190px;
  height:auto;
  top:0;
  left:50%;
  margin-left:-95px;
  transition:all 0.3s ease;
}
#pagetop:hover .txt_pagetop{
  top:-5px;
}
@media screen and (max-width:767px){
  #footer{
    height:40vw;
    background-position:bottom 0 center;
    background-size:auto 100%;
  }
  #footer .footer_innr{
    margin-top:22vw;
    padding:0 7.5vw 0 7.5vw;
  }
  #footer .logo_ft_meltea{
    margin-bottom:6.66vw;
    width:48.666vw;
  }
  #footer .ft_menu_list{
    margin-bottom:5vw;
  }
  #footer .ft_menu_list li {
    margin-right:6vw;
  }
  #footer .logo_ft_morihan{
    width:18.2666vw;
  }
  #footer .logo_kyoeiseicha{
    width:24.666vw;
  }
  #footer .txt_copyright{
    display:block;
    font-size:0.9rem;
    transform: scale(0.7);
    transform-origin:0 0;
  }
  
  #pagetop{
    position:absolute;
    width:27.333vw;
    height:40vw;
    right:5vw;
    background-image:url("../imgs/grad_backtotop_sp.svg");
    background-position:bottom 0 center;
    background-size:100% 40vw;
  }
  #pagetop a{
    width:27.333vw;
    height:40vw;
  }
  #pagetop .txt_pagetop{
    width:27vw;
    top:-4.4vw;
    margin-left:-13vw;
    transition:none;
  }
  #pagetop:hover .txt_pagetop{
    top:-4.4vw;
  }
}
