@charset "utf-8";

@import url("https://use.typekit.net/cvk2nzx.css");
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@400;700&display=swap');

:root {
	--key-font-color:#555;
	--key-font-link-color:#666;
	--key-font-hover-color:#cb1511;
	--key-font-reverse-color:#fff;
	--microtip-font-size: 10px;
}

@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 100; }
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 200; }
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 300; }
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 400; }
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Bold"); font-weight: bold; }
@font-face { font-family: "Helvetica Neue"; src: local("Helvetica Neue Regular"); font-weight: 100; }
@font-face { font-family: "Helvetica Neue"; src: local("Helvetica Neue Regular"); font-weight: 200; }

*{ margin:0; 	padding:0; 	border:0; }
*, *:after, *:before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }
html,body { height: 100%; }
html { font-size: 62.5%; }
body{ width:100%; font-family:'Zen Kaku Gothic New',-apple-system, BlinkMacSystemFont,'Helvetica Neue',"游ゴシック", YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN", sans-serif; font-size:16px; font-size:1.6rem; line-height:1.6; font-weight:500; color: var(--key-font-color); background-color:#fff; position: relative; left: 0; overflow-x: hidden; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.font-serif{ font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; font-feature-settings: "palt";}

/*  */

h1{font-size:2.4rem;}
h2{font-size:1.8rem; font-family: "pika-ultra-script", sans-serif; font-weight: 400; font-style: normal;}
h3{font-size:1.6rem;}
h4{font-size:1.6rem;}
h5{font-size:1.2rem;}
h6{font-size:1.2rem;}

@media screen and (min-width: 768px){
	h1{font-size:3.6rem;}
	h2{font-size:2.4rem;}
	h3{font-size:2.4rem;}
	h4{font-size:1.8rem;}
	h5{font-size:1.6rem;}
	h6{font-size:1.2rem;}
}

/*  */

a{ 	outline:none; 	-webkit-transition: all 0.3s ease; 	-moz-transition: all 0.3s ease; 	-o-transition: all 0.3s ease; 	transition: all  0.3s ease; }
a:link{color: var(--key-font-link-color);}
a:visited{color: var(--key-font-link-color);}
a:hover{color: var(--key-font-hover-color);}
a:active{color: var(--key-font-hover-color);}

::selection { background:var(--key-font-color); color:var(--key-font-reverse-color); text-shadow: none; }
::-moz-selection { background:var(--key-font-color); color:var(--key-font-reverse-color); text-shadow: none; }

a:link,a:visited,a:active{text-decoration:none;}
a:hover, a:active { outline: 0; text-decoration: underline; cursor: pointer;}
a:focus { outline:none; }
a img{border:none;text-decoration:none;}

a.fit { display: block; width: 100%; height: 100%; }

/* */

.img-responsive { width: 100%; max-width: 100%; height: auto;}
.img-responsive-overwrite { margin: 0 auto; }

figure { -webkit-margin-before: 0 !important; 	-webkit-margin-after: 0 !important; 	-webkit-margin-start: 0 !important; 	-webkit-margin-end: 0 !important; }

/* */

br.sp{ display: block; }
br.pc{ display: none; }
@media screen and (min-width: 1024px){
	br.sp{ display: none; }
	br.pc{ display: block; }
}

ul {
	list-style: none;
}

img{
	width: 100%;
	vertical-align: top;
}

