html {
	overflow-y: scroll;
	letter-spacing: 0.02em;
}
a {
	text-decoration: none;
	color: #000;
}
body {
	font-family: 'Fredoka One', cursive, "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
	text-align: left;
}
.ft_0b {
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
	font-weight: bold;
}
.ft_1 {
	font-family: 'Cinzel', serif;
}
.alice {
	background-color: #5A0046;
font-family: 'Berkshire Swash', cursive, "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
}
/*------------------------page tab-----------------------------*/
.alice .cp_tab {
	font-size: 112.5%;
	letter-spacing: 0.07em;
}
label {
	color: #00AF78;
}
.alice label {
	color: #fff;
}
.cp_tab *, .cp_tab *:before, .cp_tab *:after {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

.cp_tab > input[type='radio'] {
	margin: 0;
	padding: 0;
	border: none;
	border-radius: 0;
	outline: none;
	background: none;
	-webkit-appearance: none;
	        appearance: none;
	display: none;
}
.cp_tab .cp_tabpanel {
	display: none;
}
.cp_tab > input:first-child:checked ~ .cp_tabpanels > .cp_tabpanel:first-child,
.cp_tab > input:nth-child(3):checked ~ .cp_tabpanels > .cp_tabpanel:nth-child(2),
.cp_tab > input:nth-child(5):checked ~ .cp_tabpanels > .cp_tabpanel:nth-child(3),
.cp_tab > input:nth-child(7):checked ~ .cp_tabpanels > .cp_tabpanel:nth-child(4),
.cp_tab > input:nth-child(9):checked ~ .cp_tabpanels > .cp_tabpanel:nth-child(5),
.cp_tab > input:nth-child(11):checked ~ .cp_tabpanels > .cp_tabpanel:nth-child(6) {
	display: block;
}
.cp_tab > label {
	position: relative;
	display: inline-block;
	padding: 5px 15px 7px;
	cursor: pointer;
	border: 1px solid transparent ;
	border-bottom: 0;
	margin: 0 5px;
}
.cp_tab > label:hover,
.cp_tab > input:focus + label {
	color: #B4FF00;
}
.alice .cp_tab > label:hover,
.cp_tab > input:focus + label {
	color: #A0000B;
}
.cp_tab > input:checked + label {
	margin-bottom: -1px;
	border-color: #808080;
	border-bottom: 1px solid #ffffff;/*背景色と同じ*/
	border-radius: 6px 6px 0 0;
	background-color: #B4FF00; 
}
.alice .cp_tab > input:checked + label {
		border-color: #000;
	border-bottom: 1px solid #5A0046;/*背景色と同じ*/
	background-color: #A0000B; 
}
.cp_tab > input:checked + label:hover {
	color: #fff;
}
.alice .cp_tab > input:checked + label:hover {
	color: #1E0000;
}
.cp_tab .cp_tabpanel {
	padding: 0.5em 1em;
	border-top: 1px solid #808080;
}
.alice .cp_tab .cp_tabpanel {
	border-top: 1px solid #000;
}
@media (max-width: 480px) {
	.cp_tab {
		width: 100%;
		font-size: 0.8em;
	}
	.cp_tab label {
		padding: 0.5em;
	}
}

/*------------------------body-----------------------------*/
.boxfull {
	width: 100%;/* 幅は基本的に全て % で指定 */
	margin: 0 auto;
	max-width: 900px;/* サイトの最大幅 */
}
.boxfree {
	width: 100%;
	margin: 0 auto;
	clear: both;
}
.logo {
	width: 270px;
	margin: 40px auto;
/*
            animation-name: r1;
            animation-duration: 8s;
            animation-iteration-count: infinite;
            animation-timing-function: ease-in-out;
            animation-direction: alternate;*/
}
/*@keyframes r1 {
  0%   { transform: rotateY(0deg); }
  100% { transform: rotateY(360deg); }
}*/
.alice .logo {
	width: 380px;
	margin: 40px auto;
    /*
            animation-name: scale;
            animation-duration: 0.6s;
            animation-iteration-count: infinite;
            animation-timing-function: ease-in-out;
            animation-direction: alternate;*/
}
/*@keyframes scale {
    from { transform: scale(1.0, 1.0); }
    to   { transform: scale(1.01, 1.015); }
}*/
.box_trim {
    width: 250px;
        border: 2px dotted #00AF78;
    border-radius: 10px;
	float: left;
	margin: 10px 5px;
	font-size: 125%;
	color: #00AF78;
	font-weight: bold;
	        text-align: center;
}
.alice .box_trim {
        border: 2px dotted #000;
    border-radius: 0px;
	font-size: 137.5%;
	letter-spacing: 0.07em;
	color: #fff;
	font-weight: bold;
}
.box_trim p:nth-child(1) {
	margin: 8px 0;
}
.trim {
    overflow: hidden;
    display: block;
    width: 220px;
    height: 130px;
    margin: 0 auto;
    position: relative;
    line-height: 3em;
}
.trim img {
  position: absolute;
  top: 0%;
  left: 50%;
  -webkit-transform: translate(-50%, 0%);
  -ms-transform: translate(-50%, 0%);
  transform: translate(-50%, 0%);
  width: 100%;
  height: auto;
}
footer {
	position: fixed;
	bottom: 0px;
	text-align: center;
	border-top: 1px solid #808080;
	background-color: #fff;
	color: #808080;
	padding: 7px 0;
	font-size: 75%;
}
.alice footer {
	border-top: 1px solid #000;
	background-color: #5A0046;
	color: #000;
}