@font-face{
    font-family:"BodoniSevITC W08 Regular";
    src:url("/fonts/2206cc6b-244c-4060-88b8-3fad98606916.eot?#iefix");
    src:url("/fonts/2206cc6b-244c-4060-88b8-3fad98606916.eot?#iefix") format("eot"),
        url("/fonts/5d60805f-567f-4ccb-920d-fefe77577fd5.woff2") format("woff2"),
        url("/fonts/c2dcad27-a62d-40b0-88a4-fd4b1126d0cc.woff") format("woff"),
        url("/fonts/a8b4ab7e-4314-421c-a076-5e2f1b5a7845.ttf") format("truetype");
}
body {
    font-family: 'Arial',YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3','メイリオ', Meiryo,'ＭＳ ゴシック',sans-serif;
    color: #000;
    letter-spacing: 0.08em;
    font-weight: 500;
}
a, a:link, a:hover {
	color: #990000;
}
main {
	min-height: calc(100vh - 460px - 70.44px);
	overflow-x: hidden;
}
input, textarea, select, pre, button {
    font-family: 'Arial',YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3','メイリオ', Meiryo,'ＭＳ ゴシック',sans-serif;
    color: #000;
    font-weight: 500;
}
progress {
    -webkit-appearance: none;
    appearance: none;
    width: 250px;
    height: 4px;
    border-radius: 2px;
    overflow: hidden;
    background-color: #eee;
    color: #eee;
}
progress[value]::-webkit-progress-bar {
    background-color: #eee;
}
progress[value]::-webkit-progress-value {
    background-color: #aaa;
    transition: all .1s linear 0s;
}
progress[value]::-moz-progress-bar {
    background-color: #aaa;
}
.bodoni {
    font-family:'BodoniSevITC W08 Regular',YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}
.gothic {
    font-family: YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3','メイリオ', Meiryo,'ＭＳ ゴシック',sans-serif;;
}
.primary {
    color: #e2211e !important;
}
.alert {
	background-color: #e2211e !important;
}
.bg-scene1 {
    background: 20% center / cover no-repeat url("../images/bg_scene1_2.jpg?v=20200320");
    top: -100px;
    height: calc(100% + 200px);
}
.bg-primary {
    background: #911F18;
}
.bg-green {
    background: #27843D;
    bottom: 40px;
}
.wall {
	background: center / 100px 100px repeat url("../images/wall.gif");
}
.language_change {
    background: top left / cover url("../images/ribbon.png") no-repeat;
    transition: all .8s ease 0s;
}
#navbar.is-scrolled {
    background: rgba(255,255,255,0.55);
}
#logo {
    transition: transform .3s ease 0s;
}
#navmenu {
	width: 100vw;
	height: 100vh;
}
#navbar.is-scrolled .language_change {
    transform: translateY(-100%);
}
.youtube {
    position: relative;
    width: 300px;
    height: 174.75728155px;
}
.card {
    width: 66px;
    height: 100px;
	position: relative;
	-webkit-perspective: 500px;
perspective: 500px;
}
.card>* {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 66px;
    height: 100px;
    background: top / contain no-repeat;
}
.card>.a {
    opacity: 1;
}
.card>.b {
    opacity: 0;
}
.card>.rabbit {
    width: 200px;
}
.book_photo1 {
    width: 90%;
    min-width: 300px;
    bottom: -10px;
    right:  -10px;
}
.book_photo2 {
    width: 60%;
    min-width: 260px;
    bottom: 58%;
}
.footer {
    /*padding-top: 240px;*/
}
.footer_a {
	width: 200px;
	height: 233.33333px;
	background: right top / contain url(/images/footer_a.png) no-repeat;
	left: -40px;
	top: 0;
}
.footer_b {
	width: 150px;
	height: 210px;
	background: right top / contain url(/images/footer_b.png) no-repeat;
	right: -5px;
	top: 0;
}
.footer_bg {
	background: center top / auto 100% url(/images/footer_bg.gif) repeat-x;
}
.frame {
	background: #f9f9f9;
	background: -moz-linear-gradient(top,  #f9f9f9 0%, #eaeaea 100%);
	background: -webkit-linear-gradient(top,  #f9f9f9 0%,#eaeaea 100%);
	background: linear-gradient(to bottom,  #f9f9f9 0%,#eaeaea 100%);
	padding: 40px;
    display: inline-flex;
    align-items: flex-start;
}
.frame-inner {
	background: #f3f3f3;
	padding: 10px;
	border-width: 2px;
	border-style: solid;
	border-left-color: #d2d2d2;
	border-top-color: #f2f2f2;
	border-right-color: #fff;
	border-bottom-color: #e2e0e1;
    display: inline-flex;
    align-items: flex-start;
}
body.opening {
	width: 100vw;
	height: 100vh;
	overflow: hidden;
	padding-top: 100vh;
}
body.opening #navbar {
	display: none;
}
.list.list-beside-narrow>dt {
   line-height: 2;
}
.list>dt {
    font-weight: 600;
}
.hamburger:after {
    content: 'MENU';
    display: block;
    font-weight: 700;
    font-size: 10px;
    margin-top: 15px;
    text-align: center;
    transition: opacity .4s ease 0s;
}
.hamburger.is-open:after {
    opacity: 0;
}
.scroll-up {
    left: 100%;
    opacity: 0;
    transition: all .6s ease 0s;
}
.scroll-up svg {
    transition: margin .2s ease 0s;
}
.scroll-up:hover svg {
    margin-top: -3px;
}
.scroll-up.is-visible {
    transform: translateX(calc(-100% - 10px));
    opacity: 1;
}

@media (min-width: 640px) {
	.youtube {
        width: 412px;
        height: 240px;
	}
}

@media (min-width: 960px) {
	main {
		min-height: calc(100vh - 277px - 100px);
	}
	.footer_a {
		width: 300px;
		height: 350px;
		left: -70px;
		top: 0;
	}
	.footer_b {
		width: 250px;
		height: 350px;
		right: -5px;
		top: 0;
	}
    .footer_bg {
        /*height: 270px;*/
    }
    .bg-scene1 {
        background-position: center;
    }
    .card, .card>* {
        width: 99px;
        height: 150px;
    }
    .youtube {
        /*width: 412px;
        height: 240px;*/
        width: 480px;
        height: 280px;
    }
    .bg-green {
        bottom: 50px;
    }
}

@media (min-width: 1560px) {
	.footer_a {
		width: 300px;
		height: 350px;
		left: 0px;
		top: 0;
	}
	.footer_b {
		width: 250px;
		height: 350px;
		right: 10px;
		top: 0;
	}
    .footer .list {
        padding: 0;
    }
}