@charset "utf-8";

html{
	min-height: 100vh;
	position: relative;
}
@font-face {
	font-family: 'meiryo';
	src: url('../fonts/meiryo.woff') format('truetype');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'meiryo';
	src: url('../fonts/meiryob.woff') format('truetype');
	font-weight: bold;
	font-style: normal;
}
body{
	font-family: Meiryo,"meiryo",YuGothic!important;
	margin: 0;
	color: #333;
	font-size: 18px;
}
img{
	max-width: 100%;
}
input{
	-webkit-appearance: none;
	border-radius: 0;
}
a{
	cursor: pointer;
}

.btn-wrap-center{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.bold{
	font-weight: bold;
}
.btn{
	display: inline-block;
	text-align: center;
	border-radius: 50px;
	letter-spacing: 1px;
}
.btn a{
	color: #fff;
	text-decoration: none;
	display: block;
}

.main-btn,
button.main-btn,
input[type="button"].main-btn{
	font-size: 18px;
    border: none;
    padding: 10px 20px;
    border-radius: 27px;
    display: inline-block;
    min-width: 200px;
    margin-bottom: 20px;
	background-color: #fd6c9b;
	color: #fff;
	cursor: pointer;
	margin-right: 20px;
}

.sub-page{
	padding-bottom: 40px;
}
.sp-only{
	display: none;
}
.container{
	width: 90%;
	max-width: 1200px;
	margin: auto;
}
a.disabled{
    pointer-events: none;
}
.bg_img{
	position: relative;
}
.member-page{
	padding-top: 40px;
	padding-bottom: 40px;
}
.member-page .wrap{
	width: 100%;
}
.member-page h2{
	border-bottom: 5px solid;
	font-size: 180%;
	line-height: 1.2;
	margin: 0;
	margin-bottom: 10px;
}
.member-page .lead{
	line-height: 1.2;
}
.mypage-link{
	text-decoration: none;
	color: #333;
	display: inline-block;
	width: max-content;
}
.member-page form{
	margin-top: 50px;
}
.member-page .label{
	border-left: 10px solid;
	padding: 5px 0;
	padding-left: 10px;
	font-size: 130%;
	margin: 0;
	margin-top: 30px;
	margin-bottom: 10px;
	position: relative;
}
.member-page .label.border-none{
	border: none;
}
.member-page form .switch,
.member-page form .clear {
	font-size: 115%;
	padding: 0 40px;
	background-color: #eee;
	border: 1px solid #999;
	cursor: pointer;
}

.member-page form .switch {
	position: absolute;
	right: 8em;
	top: 0;
}

.member-page form .clear {
	position: absolute;
	right: 0;
	top: 0;
}

.red{
	color: red;
}

/*ヘッダー*/
header{
	padding-top: 4px;
	padding-bottom: 4px;
	border-bottom: 4px solid #c61e1c;
	width: 100%;
	z-index: 100;
	background-color: #fff;
	position: relative;
}
header.fixed{
	position: fixed;
}
.head-box{
	display: flex;
	align-items: center;
}

.head-box img.site-logo {
	width: 210px;
}

.head-title{
	display: inline-block;
	font-size: 130%;
	margin: 0 10px 0 20px;
	max-width: 40%;
}
header .is-not-login{
	margin-left: auto;
}
header .member{
	margin-left: auto;
	text-align: right;
	display: flex;
}
header .member .btn{
	margin: 5px 3px;
}
header .member .btn a{
    line-height: 1.2;
    height: 100%;
    height: 65px;
	width: 180px;
	position: relative;
	border-radius: 50px;
}
header .member .btn a.disabled{
	background-color: darkgray;
}
header .member .btn a span{
	position: absolute;
	top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    width: 100%;
}
select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
::-ms-expand {
	display: none;
}

/*フッター*/
footer{
	text-align: center;
	position: relative;
	background-color: #fff;
}
footer .foot_img{
	vertical-align: bottom;
	width: 100%;
}
footer .copyright p{
	margin: 0;
	padding: 10px 0;
	border-top: 4px solid #c61e1c;
}
.mb_footer{
	position: static;
}
.mb_footer .copyright{
	background-color: #fffef6;
}

/*メニュー*/
.main-menu-wrap{
	border-top: 10px solid #f4f3f9;
}
#main-menu{
	display: flex;
	margin-bottom: 70px;
}
#main-menu a{
	width: 20%;
}
#main-menu div {
	position: relative;
}
#main-menu div .new_icon_tab {
	position: absolute;
	top: 0;
	right: 0;
	width: 20%;
	display: none;
}
.select_recipe{
	display: none;
}
.select_book{
	display: none;
}
.select_coupon{
	display: none;
}
#main-menu a:first-child,
#main-menu a:last-child{
	width: 20.5%;
}
#main-menu img{
	width: 100%;
	cursor: pointer;
}
#main-menu-open{
	width: 90%;
	max-width: 1200px;
	margin: auto;
}
#main-menu-open .inner{
	display: flex;
}
#main-menu-open .inner > div{
	width: 19%;
	border: 10px solid #f4f3f9;
	border-top: none;
	display: none;
}
#main-menu-open .inner div.coupon_open{
	width: 19.2%;
}
#main-menu-open .inner div.entertainment_open{
	margin-left: 19.9%;
}
#main-menu-open .inner div.recipe_open{
	margin-left: 39.6%;
}
#main-menu-open .inner div.book_open{
	margin-left: 59.4%;
}
#main-menu-open .inner div.event_open{
	width: 19%;
	margin-left: 79.3%;
}
.menu-open-bg{
	position: absolute;
	width: 100%;
	background-color: rgba(200,200,200,0.5);
	height: 100%;
	z-index: 2;
	display: none;
}
.menu-open-bg.open{
	display: block;
}
#main-menu-open .inner > div > div{
	padding: 7%;
	padding-top: 10px;
}
#main-menu-open .inner > div > div a{
	text-decoration: none;
	color: #fff;
	display: block;
	font-size: 20px;
	margin: 10px 0;
	display: flex;
	word-break: break-all;
}
#main-menu-open .inner .new_icon{
	position: relative;
	width: 85%;
}
#main-menu-open .inner .new_icon::after{
	content: "";
	position: absolute;
	right: -100%;
	top: 0;
	display: inline-block;
	width: 100%;
	height: 2em;
	background: url(../img/new_icon_01.png) no-repeat;
	background-size: contain;
}

/*メニュー４つ表示の時*/
#main-menu.menu4{
	width: 90%;
	margin: auto;
	margin-bottom: 70px;
}
#main-menu.menu4 a{
	width: 25%;
}
#main-menu.menu4 a:first-child,
#main-menu.menu4 a:last-child{
	width: 25.5%;
}
#main-menu-open.menu4 .inner{
	width: 90%;
	margin: auto;
}
#main-menu-open.menu4 .inner > div{
	width: 24%;
}
#main-menu-open.menu4 .inner div.entertainment_open {
    margin-left: 24.9%;
}
#main-menu-open.menu4 .inner div.recipe_open {
    margin-left: 49.6%;
}
#main-menu-open.menu4 .inner div.book_open {
    margin-left: 74.4%;
}

/* キャンペーン用 */
#main-menu-open .inner > div > div a.emphasis{
	text-shadow: 2px 2px 0px #000;
    color: #ffe12b;
    font-weight: bold;
}
.open-menu > ul li ul a.emphasis{
	text-shadow: 2px 2px 0px #000;
    color: #ffe12b;
    font-weight: bold;
}

/*TOP*/
#top-main{
	position: relative;
}
#top-main .forgot-id-link{
	text-align: center;
}
#top-main .forgot-id-link a{
	font-size: 16px;
}
.top_bg_img{
	width: 100%;
	vertical-align: bottom;
}
.logo{
	position: absolute;
	height: 28%;
}
.main-right-btn{
	position: absolute;
	top: 8%;
	right: 0;
	width: 260px;
}
.about_img{
	margin-bottom: 5px;
}
.main-contents{
	display: flex;
	padding-bottom: 40px;
}
.top-l{
	width: 75%;
}
.top-l.guide{
	width: 100%;
}
.top-l .top-news{
	background-color: #fff;
	border-radius: 50px;
	padding-top: 60px;
	padding-bottom: 35px;
	position: relative;
	margin-top: 20px;
}
.top-l .ttl_img{
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	top: -96px;
	width: 350px;
}
.top-l .top-news .ttl_img{
	top: -100px;
}
.top-l .news-inner{
	width: 70%;
	margin: auto;
}
.top-l .news-inner article{
	margin-bottom: 3px;
	display: flex;
}
.top-l .news-inner article .date{
	margin-right: 20px;
}
.top-l .news-inner article .txt{
	position: relative;
}
.top-l .news-inner article.new .txt{
	text-indent: 3em;
}
.top-l .news-inner article.new .txt::before{
	position: absolute;
	left: 0;
	top: 2px;
	content: "";
	display: inline-block;
	width: 2em;
	height: 2em;
	background: url(../img/new_icon_02.png) no-repeat;
	background-size: contain;
}
.top-l .top-relo{
	border-radius: 50px;
	padding: 3%;
	padding-top: 60px;
	position: relative;
	margin-top: 100px;
	background-color: #fff;
	border: 5px solid;
}
.top-l .top-present{
	background-size: 600px;
	border-radius: 50px;
	padding-top: 50px;
	padding-bottom: 30px;
	position: relative;
	margin-top: 100px;
	text-align: center;
	z-index: 1;
}
.top-relo-details-wrap{
	padding: 3%;
	text-align: center;
}
.top-relo-details{
	display: flex;
	justify-content: center;
}
.top-relo-details > div{
	margin: 3% 1%;
	margin-bottom: 0;
}
.top-relo-details h3{
	color: #fff;
	text-align: center;
	border-radius: 20px;
	font-size: 90%;
	width: 95%;
	margin: auto;
	padding: 5px;
	font-weight: normal;
	margin-bottom: 10px;
	background-color: #ec7992!important;
}
.top-relo-details div div{
	display: flex;
}
.top-relo-details div div img{
	max-height: 33px;
	margin: 0 5px;
}
.top-l .top-albus{
	border-radius: 50px;
	padding: 5%;
	padding-top: 60px;
	position: relative;
	margin-top: 100px;
	background-color: #fff;
}
.top-l .top-albus .ttl_img {
	top: -90px;
}
.top-l .top-albus .albus-intro {
	text-align: center;
}
.top-l .top-albus .albus-intro h2 {
	margin: 0;
}
.top-l .top-albus .img-box {
	text-align: center;
}
.top-l .top-albus .img-box img {
	width: 80%;
}
.top-l .top-albus .btn-wrap a{
	font-size: 100%;
	box-shadow: none;
	border: none;
	padding: 10px;
	width: 350px;
	border-radius: 50px;
}
.top-l .top-plattalks{
	border-radius: 50px;
	padding: 5%;
	padding-top: 60px;
	position: relative;
	margin-top: 100px;
	background-color: #fff;
}
.top-l .top-plattalks .plattalks-intro {
	text-align: center;
}
.top-l .top-plattalks .plattalks-intro h2 {
	margin: 0;
}
.top-l .top-plattalks .reloclub-box .plattalks-intro-details p span {
	font-weight: bold;
	color: #ff0000;
}
.top-l .top-plattalks .img-box {
	text-align: center;
}
.top-l .top-plattalks .img-box img {
	width: 80%;
}
.top-l .top-plattalks .following-img-box {
	text-align: center;
	margin-top: 10px;
}
.top-l .top-plattalks .following-img-box img {
	width: 80%;
}
.top-l .top-plattalks .btn-wrap{
	margin-top: 40px;
}
.top-l .top-plattalks .btn-wrap a{
	font-size: 100%;
	box-shadow: none;
	border: none;
	padding: 10px;
	width: 350px;
	border-radius: 50px;
}
@media screen and (min-width: 1000px) and (max-width: 1300px){
	.top-relo-details div div img{
		max-height: 25px;
	}
}
.top-relo-details div p{
	text-align: center;
	margin: 0;
	font-size: 80%;
	margin-top: 5px;
	line-height: 1.2;
}
.top-relo-details-wrap .note {
	font-size: 90%;
	display: inline-block;
	margin-top: 30px;
}
.top-relo-details-wrap .note p {
	margin: 0;
}
.top-present .present-inner{
	width: 80%;
	margin: auto;
}
.top-present .present_img{
	display: flex;
	justify-content: center;
	margin: 20px 0;
	align-items: flex-start;
}
.top-present .present_img img{
	width: 45%;
}
.top-present .present_img img:first-child{
	margin-right: 3%;
}
.top-present .present_img img:last-child{
	margin-left: 3%;
}
.top-present .details p{
	margin: 0;
}
.top-present .details .ttl{
	margin-bottom: 5px;
}
.top-present .btn{
	margin-top: 5px;
}
.top-present .btn a{
	width: 300px;
	padding: 10px;
}
.top-r{
	width: 22%;
	margin-left: auto;
	margin-top: -25px;
}
.side-menu-top img,
.side-menu-btm img{
	margin-bottom: 5px;
	width: 100%;
}
.side-menu-btm{
	margin-top: 15px;
}
.side-menu-btm .btm-box{
	margin-top: 40px;
}
.top-relo h2{
	text-align: center;
	margin: 0;
}
.top-relo h2 span{
	color: #E94369;
}
.top-relo .reloclub-box .lead{
	font-size: 100%;
	font-weight: normal;
}
.top-relo .reloclub-box .details-wrap{
	width: 90%;
	margin: auto;
	margin-top: 10px;
}
.top-relo .reloclub-box .details-wrap > div{
	margin-bottom: 15px;
}
.top-relo .reloclub-box .details-wrap > div p{
	font-size: 90%;
}
.top-relo .reloclub-box .campaign-box{
	width: 90%;
	margin: auto;
	margin-top: 15px;
}
.top-relo .reloclub-box .campaign-box img{
	width: 13%;
}
.top-relo .reloclub-box .campaign-box p{
	font-size: 100%;
}
.top-relo .reloclub-box .btn-wrap{
	margin-top: 30px;
}
.top-relo .reloclub-box .btn-wrap a{
	font-size: 100%;
	box-shadow: none;
	border: none;
	padding: 10px;
	width: 350px;
	border-radius: 50px;
}
.reloclub-box .photocon-box{
	padding: 3%;
	border-radius: 20px;
	background-color: #ffe4d4;
	margin-bottom: 40px;
	text-align: center;
}
.reloclub-box .photocon-box h2{
	margin-bottom: 20px;
}
.reloclub-box .photocon-box img{
	width: 100%;
}
.top-old-member{
	border: 5px solid;
	border-radius: 50px;
	background-color: #fff;
	padding: 5%;
	margin-top: 100px;
	position: relative;
	padding-top: 50px;
}
.top-old-member p{
	margin: 0;
}
.top-old-member h2{
	text-align: center;
	margin: 10px 0;
}
.top-old-member .details{
	background: #F5F5F5;
    padding: 20px;
    margin-bottom: 30px;
}
.top-old-member .card-img{
	text-align: center;
	margin: 15px 0;
}
.top-old-member .card-img img{
	max-width: 350px;
}
.top-old-member .link-box{
	background-color: #FFE5E5;
	padding: 30px 20px;
	text-align: center;
}
.top-old-member .link-box p{
	margin: 0;
}
.top-old-member .link-box > div{
	display: flex;
	margin-top: 20px;
}
.top-old-member .link-box > div a{
	width: 30%;
	margin: 0 2%;
	text-decoration: none;
	color: #333;
}
.top-old-member .link-box > div p{
	text-align: center;
}
.top-old-member .link-box > div img{
	width: 100%;
}
.top-guidance{
	border: 5px solid;
	border-radius: 50px;
	background-color: #fff;
	padding: 5%;
	margin-top: 100px;
	position: relative;
	padding-top: 50px;
}
.top-guidance p{
	margin: 0;
}
.top-guidance .details{
	margin: 20px 0;
}
.top-guidance h2{
	text-align: center;
	margin: 0;
}
.top-guidance .btn-wrap{
	text-align: center;
	margin-top: 30px;
}
.top-guidance .btn-wrap a{
    padding: 10px;
    width: 350px;
    border-radius: 50px;
	display: inline-block;
    text-decoration: none;
    color: #fff;
}
.top-guidance .ttl_img{
	top: -56px;
}
.top-online{
	border: 5px solid;
    border-radius: 50px;
    background-color: #fff;
    padding: 5%;
    margin-top: 100px;
    position: relative;
    padding-top: 50px;
}
.top-online h2{
	text-align: center;
	margin: 0;
}
.top-online-box .time{
	margin: 0;
	text-align: center;
	font-size: 90%;
}
.top-online-box .online-link-box{
	text-align: center;
	padding: 30px;
	border-radius: 20px;
}
.top-online-box .online-link-box div{
	display: inline-block;
	margin: 5px;
	background: #fff;
    padding: 20px;
    border-radius: 20px;
}
.top-online-box .online-link-box div p{
	margin: 0;
	margin-bottom: 10px;
}
.top-online-box .online-link-box div img{
	height: 30px;
}
.top-online-box .online-link-box .btn-box{
	margin-top: 25px;
	background-color: unset;
	padding: 0;
}
.top-online-box .online-link-box .btn-box a{
	font-size: 100%;
    box-shadow: none;
    border: none;
    padding: 10px;
    border-radius: 50px;
    color: #fff;
    text-decoration: none;
    display: inline-block;
    width: 350px;
}
.top-online-btm{
	text-align: center;
	margin-top: 30px;
}
.top-online-btm .link-box > div{
	display: inline-block;
	width: 45%;
}
.top-online-btm .link-box > div p{
	margin: 0;
	font-size: 85%;
	margin-bottom: 3px;
}
.top-online-btm .link-box > div a{
	color: #fff;
	text-decoration: none;
	display: inline-block;
	padding: 10px;
	width: 80%;
	border-radius: 5px;
}
.top-online-btm .link-box > div a br{
	display: none;
}
/*マイページ*/
.mypage-menu-wrap{
	background-color: #fff;
	position: relative;
	padding: 50px 30px;
	padding-top: 80px;
	margin-top: 80px;
	border: 5px solid;
}
.mypage-menu-wrap > img{
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	width: 450px;
	top: -120px;
}

.mypage-new-link-wrap{
	position: relative;
}
.mypage-new-link-wrap .new_icon_tab{
	position: absolute;
	top: -20%;
	right: -5%;
	width: 20%;
}

.mypage-menu{
	display: flex;
	flex-wrap: wrap;
}
.mypage-menu > div{
	width: 44%;
	margin: 2% 3%;
	text-align: center;
}
.mypage-menu a{
	text-decoration: none;
	color: #fff;
	padding: 45px 0;
	display: block;
	border: 2px solid #fff;
	border-radius: 20px;
	box-shadow: 0px 0px 10px #888;
	font-size: 180%;
	cursor: pointer;
}

.mypage-menu a.cancel{
	background-color: gray;
}

/*メール受信設定*/
.mail-config-box{
	margin-top: 40px;
}
.mail-config form > div{
	margin: 30px 0;
}
.mail-config form .input-box{
	background-color: #fff;
	padding: 15px 10px;
	font-size: 130%;
}
.mail-config form .input-box label{
	cursor: pointer;
}
.mail-config form .btn-box{
	text-align: center;
	margin-top: 100px;
	margin-bottom: 0;
}
.mail-config form .btn-box input,
.mail-config form .btn-box a {
	color: #fff;
    border: 2px solid #fff;
    font-size: 180%;
    text-align: center;
    width: 35%;
    padding: 45px 0;
    border-radius: 20px;
    box-shadow: 0px 0px 10px #888;
    outline: none;
    margin: 0 5px;
	display: inline-block;
	cursor: pointer;
	text-decoration: none;
}
.mail-config form .btn-box .back{
	background-color: #8e8e8e;
}
.mail-config .member-page{
	padding-bottom: 0;
}
input[type=radio] {
	-webkit-appearance: none;
	-moz-appearance: none;
	-ms-appearance: none;
	-o-appearance: none;
	appearance: none;
	position: relative;
	right: 0;
	bottom: 0;
	left: 0;
	height: 25px;
	width: 25px;
	vertical-align: -0.8rem;
	color: #fff;
	cursor: pointer;
	display: inline-block;
	outline: none;
	border-radius: 10%;
	vertical-align: text-top;
	border-radius: 50%;
	border: 1px solid #ddd;
	background-color: #ddd;
	margin-left: 10px;
	margin-right: 10px;
}
input[type=radio]:checked:before {
	transform: scale(1);
	background: #333;
}
input[type=radio]:before {
	content: "";
	display: block;
	width: 17px;
	height: 17px;
	border-radius: 50%;
	margin: 3px;
	transform: scale(0);
}
.mail-config-box.cmp .btn-box{
	text-align: center;
	margin-top: 80px;
}
.mail-config-box.cmp .back{
	display: inline-block;
	background-color: #8e8e8e;
	color: #fff;
	border: 2px solid #fff;
	font-size: 180%;
	padding: 45px;
	width: 35%;
	border-radius: 20px;
	box-shadow: 0px 0px 10px #888;
	outline: none;
	cursor: pointer;
	text-decoration: none;
}

/*ログイン情報変更*/
.login-edit-box{
	margin-top: 40px;
}
.login-edit form table{
	width: 100%;
	border-collapse: collapse;
}
.login-edit form table .btm60{
	padding-bottom: 60px;
}
.login-edit form table th{
	background-color: #eeeeee;
	font-size: 130%;
	font-weight: normal;
	text-align: left;
	padding: 15px 30px;
}
.login-edit form table td{
	background-color: #fff;
	padding: 15px 30px;
}
.login-edit form table td input{
	font-size: 130%;
	padding: 15px;
	width: 95%;
	border: 1px solid #999;
}
.login-edit form table td p{
	margin: 0;
	margin-top: 5px;
}
.login-edit .btn-box{
	text-align: center;
	margin-top: 50px;
}
.login-edit .btn-box .btn{
	color: #fff;
	border: 2px solid #fff;
	font-size: 180%;
	text-align: center;
	width: 35%;
	padding: 45px 0;
	border-radius: 20px;
	box-shadow: 0px 0px 10px #888;
	outline: none;
	display: inline-block;
	margin: 0 5px;
	cursor: pointer;
	text-decoration: none;
}
.login-edit .btn-box .back{
	background-color: #8e8e8e;
}
.login-edit-box.cmp .btn-box .back{
	display: inline-block;
    background-color: #8e8e8e;
    color: #fff;
    border: 2px solid #fff;
    font-size: 180%;
    padding: 45px;
    width: 35%;
    border-radius: 20px;
    box-shadow: 0px 0px 10px #888;
	outline: none;
	cursor: pointer;
	text-decoration: none;
}

/*退会申請*/
.withdraw-box{
	margin-top: 40px;
}
.withdraw form .input-box{
	background-color: #fff;
	padding: 15px 10px;
	font-size: 130%;
}
.withdraw form .input-box label{
	cursor: pointer;
}
.withdraw form .btn-box{
	margin-top: 70px;
	text-align: center;
	margin-bottom: 0;
}
.withdraw form .btn-box .btn {
	color: #fff;
    border: 2px solid #fff;
    font-size: 180%;
    text-align: center;
    width: 35%;
    padding: 45px 0;
    border-radius: 20px;
    box-shadow: 0px 0px 10px #888;
    outline: none;
    margin: 0 5px;
	display: inline-block;
	cursor: pointer;
	text-decoration: none;
}
.withdraw form .btn-box .btn.back {
	background-color: #8e8e8e;
}
.withdraw-box.cmp .btn-box{
	text-align: center;
	margin-top: 60px;
}
.withdraw-box.cmp .btn {
	display: inline-block;
	background-color: #8e8e8e;
	color: #fff;
	border: 2px solid #fff;
	font-size: 180%;
	padding: 45px;
	width: 35%;
	border-radius: 20px;
	box-shadow: 0px 0px 10px #888;
	outline: none;
	cursor: pointer;
	text-decoration: none;
}

/* 登録前入力 */
.prior-confirm form .input-box{
	background-color: #fff;
	padding: 15px 10px;
	font-size: 130%;
}
.prior-confirm form .input-box .lead{
	font-size: 1rem;
}
.prior-confirm form .input-box .name{
	margin-right: 20px;
}
.prior-confirm form .notice{
	background-color: #eeeeee;
}
.prior-confirm form .input-box input{
	border: 1px solid #999;
    font-size: 130%;
    cursor: pointer;
    position: relative;
}
.prior-confirm form .input-box input::placeholder{
  	font-size: 20px;
  	position: absolute;
    top: 50%;
    left: 10px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
_::-webkit-full-page-media, _:future, :root .prior-confirm form .input-box input::placeholder{
    font-size: 20px;
  	position: relative;
  	top: auto;
  	left: auto;
  	transform: unset;
  	-webkit-transform: unset;
    -ms-transform: unset;
}
.prior-confirm form .input-box input:-ms-input-placeholder{
  	font-size: 20px;
}
.prior-confirm form .input-box input.code{
	padding: 0 15px;
	height: 60px;
	width: 300px;
}
.prior-confirm form .input-box label{
    cursor: pointer;
}
.prior-confirm form .input-box td{
    font-size: 100%;
}

/*登録*/
.regist-box{
	margin-top: 40px;
}
.regist form .label{
	min-height: 35px;
}
.regist form > div{
	margin: 30px 0;
}
.regist form table{
	width: 100%;
	border-collapse: collapse;
}
.regist form table p{
	margin: 0;
}
.regist form table th{
	background-color: #eeeeee;
	font-size: 130%;
	font-weight: normal;
	text-align: left;
	width: 220px;
	padding: 15px 30px;
}
.regist form table td{
	background-color: #fff;
	padding: 15px 30px;
	font-size: 130%;
}
.regist form table .tp30{
	padding-top: 30px;
}
.regist form table .btm30{
	padding-bottom: 30px;
}
.regist form table .email span{
	vertical-align: bottom;
}
.regist form table .email input{
	width: 41%;
}
.regist form table .email .select-box{
	width: 46%;
}
.regist form table .email .select-box select{
	width: 100%;
}
.regist form table td .scroll{
	height: 184px;
	overflow-y: scroll;
	line-height: 1.2;
	border: 1px solid #ccc;
	padding: 5px;
	font-size: 80%;
}
.regist form table td .scroll::-webkit-scrollbar {
	width: 20px;
}
.regist form table td .scroll::-webkit-scrollbar-track {
	background: #eee;
}
.regist form table td .scroll::-webkit-scrollbar-thumb {
	background: #494949;
}
.regist form table td input{
	border: 1px solid #999;
	padding: 15px;
	font-size: 130%;
	cursor: pointer;
}
.regist form table td input[type=radio]{
	padding: 0;
	border-color: #ddd;
	margin-left: 40px;
}
.regist form table td input[type=radio]:first-child{
	margin-left: 0;
}
.regist form table .col2{
	display: flex;
	flex-wrap: wrap;
}
.regist form table .col2 > div{
	width: 48%;
	flex-wrap: wrap;
	align-items: baseline;
}
.regist form table .col2 > div:first-child{
	margin-right: 4%;
}
.regist form table .col2 > div input{
	width: 90%;
}
.regist form table .col2 > div > p{
	margin-right: 10px;
	width: 50px;
}
.regist form .example{
	font-size: 18px;
	margin-top: 5px;
}
.regist form table .col3{
	display: flex;
}
.identity table .col3 > div{
	display: flex;
	align-items: flex-end;
}
.identity table .col3 > div > p{
	margin-right: 10px;
}
.regist form table select{
	font-size: 130%;
	border: 1px solid #999;
	border-radius: 0;
	padding: 0 15px;
	background-color: #fff;
	padding-right: 30px;
	height: 67px;
	cursor: pointer
}
.regist form table select.width350{
	width: 350px;
}
.regist form table select.width200{
	width: 200px;
}
.regist form table select.width100{
	width: 100px;
}
.select-box select::-ms-expand {
	display: none;
}
.select-box {
	position: relative;
	display: inline-block;
}
.select-box::before {
	position: absolute;
	top: 26px;
	right: 10px;
	width: 0;
	height: 0;
	padding: 0;
	content: '';
	border-left: 7px solid transparent;
	border-right: 7px solid transparent;
	border-top: 12px solid #000;
	pointer-events: none;
}
.regist form input[type=date]{
	height: 35px;
}
.regist form input[type=date]::before{
	display: none;
}
.regist form table .width95p{
	width: 95%;
}
.regist form table .width50p{
	width: 50%;
}
.regist .add_icon{
	display: block;
	width: 80px;
	margin: auto;
	cursor: pointer;
}
.regist .image-button{
	text-align: center;
}
.regist .image-button button{
	width: auto;
	padding:0;
	margin:0;
	background:none;
	border:none;
	font-size:0;
	line-height:0;
	overflow:visible;
	cursor:pointer;
}
.trigger table .col3 div{
	width: 33%;
	vertical-align: middle;
}
.regist .caution{
	font-size: 130%;
}
.regist form input[type=submit]{
	margin: auto;
	display: block;
	color: #fff;
	border: 2px solid #fff;
	font-size: 180%;
	padding: 45px;
	width: 35%;
	border-radius: 20px;
	box-shadow: 0px 0px 10px #888;
	margin-top: 50px;
	outline: none;
	cursor: pointer;
}
.regist form input[type=submit]:disabled{
	background-color: #8e8e8e;
}
.init-modal{
	padding-top: 3%;
	position: fixed;
	z-index: 7777;
	display: none;
	max-width: 800px;
	width: 100%;
	min-width: 350px;
	margin: 0;
	text-align: center;
	height: 300px;
	border: 10px solid #FBD9BC;
	background-color: #FBD9BC;
}

.init-modal input{
	height: 100px;
	padding: 10px;
	width: 600px;
	display: inline-block;
	padding: 0.3em 0.5em;
	margin: 10px 10px;
	text-decoration: none;
	color:#333333 !important;
	border: solid 2px #333333;
	border-radius: 3px;
	transition: .4s;
	background: #fff;
	line-height: 130%;
	font-size: 30px;
	opacity: 0.8;
}

.contact-box{
	margin-top: 100px;
	border: 5px solid #999;
	background-color: #fff;
	text-align: center;
	padding: 25px;
	font-size: 130%;
}
.contact-box > a{
	background-color: #999;
	color: #fff;
	text-decoration: none;
	width: 40%;
	display: inline-block;
	padding: 15px;
}
.contact-box > div{
	margin-top: 30px;
	margin-bottom: 10px;
}
.contact-box > div p{
	margin: 0;
	line-height: 1.2;
}
.error-default{
	margin-top: 100px;
	border: 5px solid #999;
	background-color: #fff;
	text-align: center;
	padding: 25px;
	font-size: 130%;
}

.error-default > a{
	background-color: #999;
	color: #fff;
	text-decoration: none;
	width: 40%;
	display: inline-block;
	padding: 15px;
}
.error-default > div{
	margin-top: 30px;
	margin-bottom: 10px;
}
.error-default > div p{
	margin: 0;
	line-height: 1.2;
}
.error-default > div a{
	background-color: #ecad1f;
	color: #fff;
	text-decoration: none;
	width: 40%;
	display: inline-block;
	padding: 15px;
}
.regist .btn-box{
	text-align: center;
	margin-top: 100px;
	margin-bottom: 0;
}
.regist form .btn-box .btn{
	color: #fff;
	border: 2px solid #fff;
	font-size: 180%;
	text-align: center;
	width: 35%;
	padding: 45px 0;
	border-radius: 20px;
	box-shadow: 0px 0px 10px #888;
	outline: none;
	margin: 0 5px;
	display: inline-block;
	cursor: pointer;
	text-decoration: none;
}
.regist .btn-box .btn.back{
	background-color: #8e8e8e;
}
.regist .post-btn{
	background-color: #aaaaaa;
	color: #fff;
	font-size: 80%;
	height: 67px;
	vertical-align: bottom;
	padding: 0 20px;
	margin-left: 5px;
	cursor: pointer;
}
.regist-box.cmp .btn-box .btn.back{
    background-color: #8e8e8e;
}

/*登録確認*/
.confirm-box{
	margin-top: 50px;
}
.confirm-box table{
	width: 100%;
	border-collapse: collapse;
}
.confirm-box table th{
	background-color: #eee;
	font-weight: normal;
	text-align: left;
	width: 285px;
	padding: 15px 30px;
	font-size: 130%;
	vertical-align: top;
	padding-left: 44px;
}
.confirm-box table th.ttl{
	padding-left: 20px;
}
.confirm-box table .tp30{
	padding-top: 30px;
}
.confirm-box table .btm30{
	padding-bottom: 30px;
}
.confirm-box table td{
	background-color: #fff;
	font-size: 130%;
	padding: 15px 30px;
}
.regist-confirm .btn-box{
	text-align: center;
	margin-top: 70px;
}
.regist-confirm .btn-box input,
.regist-confirm .btn-box .btn{
	color: #fff;
	border: 2px solid #fff;
	font-size: 180%;
	text-align: center;
	width: 35%;
	padding: 45px;
	border-radius: 20px;
	box-shadow: 0px 0px 10px #888;
	outline: none;
	margin: 0 5px;
	display: inline-block;
	cursor: pointer;
	text-decoration: none;
}
.regist-confirm .btn-box input.back,
.regist-confirm .btn-box .btn.back{
	background-color: #8e8e8e;
}

/*登録完了*/
.regist-cmp .lead{
	margin-top: 40px;
	font-size: 115%;
	margin-left: 20px;
}
.regist-cmp .btn-box{
	text-align: center;
	margin-top: 80px;
}
.regist-cmp .btn-box a{
	color: #fff;
	border: 2px solid #fff;
	font-size: 180%;
	text-align: center;
	width: 35%;
	padding: 45px 0;
	border-radius: 20px;
	box-shadow: 0px 0px 10px #888;
	outline: none;
	margin: 0 5px;
	display: inline-block;
	text-decoration: none;
	cursor: pointer;
}
.confirmation-button{
	background-color: #fca01e;
	margin: auto;
	display: block;
	color: #fff;
	border: 2px solid #fff;
	font-size: 180%;
	padding: 20px;
	width: 40%;
	border-radius: 20px;
	box-shadow: 0px 0px 10px #888;
	margin-top: 50px;
	outline: none;
}
/* おともだち紹介 */
.invite-wrap .btn-box{
	text-align: center;
	margin-top: 80px;
}
.invite-wrap .btn-box > div{
	display: inline-block;
	width: 35%;
}
.invite-wrap .btn-box button.back{
	background-color: #8e8e8e;
}
.invite-wrap button{
	display: inline-block;
	color: #fff;
	border: 2px solid #fff;
	font-size: 180%;
	padding: 45px;
	width: 100%;
	border-radius: 20px;
	box-shadow: 0px 0px 10px #888;
	outline: none;
	cursor: pointer;
}
.invite-wrap .url-wrap{
	text-align: center;
	background-color: #fff;
	padding: 15px 30px;
}
.invite-wrap button.copy-btn{
	border: 2px solid #fff;
	font-size: 120%;
	padding: 10px;
	width: 30%;
}
.invite-wrap button.copy-btn:active{
	color: gray;
	border: 2px solid gray;
}
.url-box{
	margin-top: 50px;
	width: 100%;
	border-collapse: collapse;
}
.url-box .invitation_url{
	word-wrap: break-word
}
/*問合わせ*/
.contact .lead strong{
	font-size: 130%;
	display: block;
	margin-bottom: 5px;
}
.contact .input-box{
	margin-bottom: 30px;
}
.contact .input-box table{
	border-collapse: collapse;
	width: 100%;
}
.contact .input-box table th{
	background-color: #eeeeee;
	font-size: 130%;
	font-weight: normal;
	text-align: left;
	width: 200px;
	padding: 15px 30px;
}
.contact .input-box table td{
	background-color: #fff;
	padding: 15px 30px;
	font-size: 130%;
}
.contact .confirm .input-box table th{
	vertical-align: top;
	padding: 25px 30px;
}
.contact .confirm .input-box table td{
	padding: 25px 30px;
}
.contact form table .tp50{
	padding-top: 50px;
}
.contact .confirm .input-box table .tp50{
	padding-top: 50px;
}
.contact form table .btm50{
	padding-bottom: 50px;
}
.contact .confirm .input-box table .btm50{
	padding-bottom: 50px;
}
.contact form table td.col2{
	display: flex;
}
.contact form table .col2 > div {
	width: 48%;
	display: flex;
	align-items: center;
}
.contact form table .col2 > div:first-child{
	margin-right: 4%;
}
.contact form table p {
	margin: 0;
}
.contact form table .col2 > div > p {
	margin-bottom: 30px;
	margin-right: 10px;
	width: 10%;
}
.contact form table .col2 > div > div{
	width: 85%;
}
.contact form table .col2 > div > div input{
	width: 90%;
}
.contact form table td input{
	border: 1px solid #999;
	padding: 15px;
	font-size: 130%;
}
.contact form table td textarea{
	padding: 15px;
	font-size: 130%;
	width: 95%;
	height: 220px;
	vertical-align: bottom;
	border: 1px solid #999;
}
.contact form .example {
	font-size: 18px;
	margin-top: 5px;
}
.contact form table .width95p {
	width: 95%;
}
.contact .caution{
	font-size: 130%;
}
.contact .caution p{
	display: flex;
}
.contact form input[type=submit] {
	display: inline-block;
	color: #fff;
	border: 2px solid #fff;
	font-size: 180%;
	padding: 45px;
	width: 35%;
	border-radius: 20px;
	box-shadow: 0px 0px 10px #888;
	outline: none;
	margin: 0 10px;
	cursor: pointer;
}
.contact .confirm input.back{
	background-color: #8e8e8e;
}
.contact .btn-box{
	text-align: center;
	margin-top: 60px;
}
.contact-cmp .label{
	margin-top: 40px;
}
.contact-cmp .lead{
	margin: 0 20px;
	font-size: 115%;
}
.contact-cmp .btn-box{
	text-align: center;
	margin-top: 60px;
}
.contact-cmp .btn-box a{
	margin: auto;
	display: inline-block;
	background-color: #8e8e8e;
	color: #fff;
	border: 2px solid #fff;
	font-size: 180%;
	padding: 45px;
	width: 35%;
	border-radius: 20px;
	box-shadow: 0px 0px 10px #888;
	outline: none;
	text-decoration: none;
}
/*応募フォーム*/
.application .lead{
	font-size: 115%;
	margin: 40px 20px;
}
.application .btn-box{
	text-align: center;
	margin-top: 80px;
}
.application .btn-box a,
.application button{
	display: inline-block;
	color: #fff;
	cursor: pointer;
	border: 2px solid #fff;
	font-size: 180%;
	padding: 45px;
	width: 35%;
	border-radius: 20px;
	box-shadow: 0px 0px 10px #888;
	outline: none;
}
.application a.back-btn{
	background-color: #8e8e8e;
	text-decoration: none;
}

/*サンリオ動画*/
.movie-box-wrap{
	border: 5px solid;
	background-color: #fff;
	position: relative;
	margin-top: 130px;
	padding: 40px;
	padding-top: 100px;
	box-shadow: 0px 0px 10px #888;
}
.movie-box-wrap h2{
	margin: 0;
}
.movie-box-wrap h2 img{
	position: absolute;
	right: 0;
	left: 0;
	margin: auto;
	top: -140px;
	width: 500px;
}
.movie-box-wrap .movie-box{
	width: 90%;
	margin: auto;
	margin-bottom: 60px;
}
.movie-box-wrap .movie-wrap{
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.movie-box-wrap h3{
	font-size: 180%;
	margin: 0;
	text-align: center;
	line-height: 1.2;
	padding-bottom: 5px;
}
.movie-box-wrap .movie-wrap iframe{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
.movie-box-wrap .link{
	text-align: right;
}
.movie-box-wrap .link a{
	font-size: 130%;
	letter-spacing: 1px;
}

/*サンリオアプリ*/
.app-box-wrap{
	border: 5px solid;
	background-color: #fff;
	position: relative;
	margin-top: 130px;
	padding: 40px;
	padding-top: 60px;
	box-shadow: 0px 0px 10px #888;
}
.app-box-wrap h2{
	margin: 0;
}
.app-box-wrap h2 img{
	position: absolute;
	right: 0;
	left: 0;
	margin: auto;
	top: -140px;
	width: 500px;
}
.app-box h3{
	text-align: center;
	margin: 0;
	margin-top: 50px;
}
.app-box h3 span{
	border-bottom: 5px solid;
	padding: 0 5px;
}
.app-list{
	display: flex;
	flex-wrap: wrap;
}
.app-list > div{
	width: 25%;
	padding-bottom: 60px;
	position: relative;
	margin-top: 20px;
}
.app-icon{
	text-align: center;
}
.app-list p{
	font-size: 12px;
	width: 225px;
	margin: auto;
	line-height: 1.8;
	max-width: 100%;
}
.app-list .app_name{
	font-weight: bold;
}
.app_store{
	width: 220px;
	display: flex;
	position: absolute;
	text-align: center;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
	max-width: 100%;
}
.app_store a{
	text-decoration: none;
	width: 50%;
	margin: 0 1%;
}

/* 壁紙カレンダー */
.calendar-box-wrap{
	border: 5px solid;
	background-color: #fff;
	position: relative;
	padding: 40px;
	padding-top: 60px;
	box-shadow: 0px 0px 10px #888;
}
.calendar-box-wrap h2 img{
	position: absolute;
	right: 0;
	left: 0;
	margin: auto;
	top: -80px;
	width: 500px;
}
.calendar-box h3{
	text-align: center;
	margin: 40px 0;
	font-size: xx-large;
}
.calendar-box h3 span{
	border-bottom: 5px solid;
	padding: 0 5px;
}
.calendar-box .latest-calendar{
	text-align: center;
	margin: 0 20%;
}
.calendar-box .latest-calendar img{
	max-height: 800px;
	width: auto;
    box-shadow: 0px 0px 10px #888;
}
.calendar-list{
	display: flex;
	flex-wrap: wrap;
}
.calendar-list > div{
	margin-top: 20px;
	padding-bottom: 30px;
	position: relative;
	width: 25%;
}
.calendar-thumbnail{
	margin: 3%;
	text-align: center;
}
.calendar-thumbnail img{
    box-shadow: 0px 0px 10px #888;
}

/*表彰状を貰おう*/
.stamp{
	padding-bottom: 20px;
}
.stamp .stamp-box-wrap{
	border: 5px solid;
	background-color: #fff;
	position: relative;
	margin-top: 130px;
	padding: 40px;
	padding-top: 70px;
	box-shadow: 0px 0px 10px #888;
}
.stamp .stamp-box-wrap h2{
	margin: 0;
}
.stamp .stamp-box-wrap h2 img{
	position: absolute;
	right: 0;
	left: 0;
	margin: auto;
	top: -140px;
	width: 500px;
}
.stamp-box-wrap .intro{
	margin: 0 20px;
}
.stamp-box-wrap .intro p{
	margin: 5px 0;
	font-size: 110%;
}
.stamp-card{
	margin: -5% -3%;
	position: relative;
}
.stamp-card .objective{
	width: 85%;
	right: 0;
	left: 0;
	margin: auto;
	position: absolute;
	top: 8%;
	border: 3px solid;
	padding: 10px 20px;
	border-radius: 10px;
	background-color: #fff;
}
.stamp-card .objective p{
	margin: 0;
	font-size: 120%;
	font-weight: bold;
}
.stamp-card .objective .button{
	outline: none;
	margin: 5px 0;
	width: 100%;
	border: 10px;
	padding: 10px 2px 9px;
	text-decoration: none;
	color: #fff;
	background-color: #fff;
}
.stamp-card .objective p span{
	font-weight: normal;
	font-size: 80%;
}
.stamp-card .objective input{
	outline: none;
	font-size: 250%;
	margin: 10px 0;
	width: 100%;
	border: none;
}
.stamp-num img{
	width: 15%;
	position: absolute;
}
.stamp-num .stamp1{
	right: 12%;
	top: 29%;
}
.stamp-num .stamp2{
	right: 4%;
	top: 43.5%;
}
.stamp-num .stamp3{
	right: 4.5%;
	top: 60%;
}
.stamp-num .stamp4{
	right: 15%;
	top: 74.5%;
}
.stamp-num .stamp5{
	right: 33%;
	top: 80%;
}
.stamp-num .stamp6{
	left: 33%;
	top: 80%;
}
.stamp-num .stamp7{
	left: 15%;
	top: 74.5%;
}
.stamp-num .stamp8{
	left: 4.5%;
	top: 60%;
}
.stamp-num .stamp9{
	left: 4%;
	top: 43.5%;
}
.stamp-num .stamp10{
	left: 12%;
	top: 29%;
}
.stamp .rc-button{
	text-align: center;
	margin-top: 60px;
}
.stamp .rc-button button{
	color: #fff;
    border: 2px solid #fff;
    font-size: 150%;
    padding: 20px;
    width: 30%;
    border-radius: 20px;
    box-shadow: 0px 0px 10px #888;
    outline: none;
}
.stamp .clear-box{
	text-align: center;
	margin: 10px 20px 30px 20px;
    padding: 40px;
	border-radius: 20px;
	margin-top: 40px;
}
.stamp .clear-box h3{
	font-size: 130%;
    margin: 0;
    margin-bottom: 20px;
}
.stamp .clear-box .btn-box{
	margin-top: 35px;
}
.stamp .clear-box button{
    font-size: 130%;
    border: 2px solid #fff;
    box-shadow: 0px 0px 10px #888;
    padding: 10px 30px;
    border-radius: 20px;
    outline: none;
}
.stamp .clear-box button a{
	color: #fff;
	text-decoration: none;
}
.stamp .clear-box .text-box{
	display: inline-block;
	width: 30%;
}
.stamp .clear-box .text-box p{
	margin: 0;
	font-size: 90%;
    margin-bottom: 3px;
}
.stamp .clear-box .text-box p span{
	font-size: 90%;
}
.stamp .clear-box .text-box input{
	border: 1px solid;
	padding: 10px;
	width: 85%;
	border-radius: 5px;
	font-size: 100%;
	text-align: center;
}

/*パスワード再設定*/
.pass_reset{
	padding-bottom: 50px;
}
.pass-reset-box{
	width: 70%;
	margin: auto;
	background-color: #fff;
	margin-top: 50px;
}
.pass_reset h2{
	color: #fff;
	padding: 30px;
	position: relative;
	margin: 0;
	border: none;
	text-align: center;
	letter-spacing: 1px;
}
.pass-reset-box form{
	padding: 30px;
	margin-top: 0;
	text-align: center;
	padding-bottom: 75px;
	position: relative;
}
.pass_reset h2 img{
	position: absolute;
	height: 70px;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 30px;
}
.pass-reset-box form .lead{
	margin: 0;
	color: #999;
	margin-bottom: 20px;
}
.pass-reset-box form label input{
	width: 80%;
	border: 1px solid #999;
	padding: 15px;
	font-size: 130%;
}
.pass-reset-box form label input::placeholder{
	color: #999;
}
.pass-reset-box .next-btn{
	position: absolute;
    	bottom: -50px;
    	left: 50%;
   	transform: translateX(-50%);
	width: 100px;
	outline: none;
}
.pass-reset-box.cmp form .lead{
	text-align: left;
}
.pass-reset-box.cmp form{
	padding-bottom: 40px;
}
.pass-reset-box.cmp a{
	display: inline-block;
	background-color: #8e8e8e;
	color: #fff;
	border: 2px solid #fff;
	font-size: 150%;
	padding: 20px;
	width: 35%;
	border-radius: 20px;
	box-shadow: 0px 0px 10px #888;
	outline: none;
	margin-top: 20px;
	text-decoration: none;
}

/*ログイン*/
.login{
	padding-bottom: 50px;
}
.login h2{
	color: #fff;
	padding: 30px;
	position: relative;
	margin: 0;
	border: none;
	text-align: center;
	letter-spacing: 1px;
}
.login h2 img{
	position: absolute;
	height: 70px;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 50px;
}
.login_box{
	width: 50%;
	margin: auto;
	background-color: #fff;
	margin-top: 50px;
}
.login_box form {
	padding: 40px 20px;
	padding-bottom: 55px;
	position: relative;
	margin-top: 0;
}
.login_box form label{
	display: block;
	margin-bottom: 0px;
	text-align: center;
}
.login_box label:last-of-type {
	margin-bottom: 0;
}
.login_box label input{
	border: 1px solid #999;
	padding: 15px;
	font-size: 130%;
	width: 90%;
}
.login_box label input::placeholder{
	color: #999;
}

.login_form-text p{
	text-decoration: none;
	padding-left: 5%;
	font-size: 14px;
	color: #999;
	margin-top: 5px;
	margin-bottom: 10px;
	display: flex;
}

.pass-change a{
	text-decoration: none;
	padding-left: 5%;
	font-size: 14px;
	color: #999;
	display: block;
}
.login_box .next-btn {
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	width: 100px;
	outline: none;
}

.login_box .login-btn {
	left: 0;
	right: 0;
	margin: 0 25%;
	margin-top: 30px;
	outline: none;
	font-size: 130%;
    border: 2px solid #fff;
    box-shadow: 0px 0px 10px #888;
    padding: 5px;
    border-radius: 15px;
    display: inline-block;
    width: 50%;
	cursor: pointer;
}

.login_box .err-message-item{
	color: #c61e1c;
}

.help-btn-wrap {
	margin: 32px;
}

.help-btn-wrap .regist-btn {
	text-align: center;
	margin-bottom: 20px;
}
.help-btn-wrap .regist-btn a{
	font-size: 200%;
	border: 2px solid #fff;
	box-shadow: 0px 0px 10px #888;
	padding: 10px;
	border-radius: 15px;
	display: inline-block;
	width: 35%;
	margin-bottom: 20px;
	text-decoration: none;
	max-width: 400px;
}
.help-btn-wrap .regist-btn .help-to-login{
	font-size: 14px;
}
.calendar-box .download-btn-wrap {
	padding: 40px 0;
	margin-top: 10px;
	margin: auto;
	max-width: 400px;
}
.calendar-box .download-btn-wrap a{
	padding: 2% 16%;
	display: inline-block;
	font-size: 115%;
	border: 2px solid #fff;
	box-shadow: 0px 0px 10px #888;
	border-radius: 15px;
	text-decoration: none;
	max-width: 400px;
}
.calendar-box .download-btn-wrap a img{
	transform: translateX(100%);
	max-width: 23px;
	box-shadow: none;
}
/*WEB漫画*/
.comic-list .comic-box-wrap{
	margin-bottom: 50px;
}
.comic-list .comic-box-wrap h2{
	font-size: 180%;
	border-left: 10px solid;
	padding-left: 10px;
	margin: 0;
	margin-bottom: 5px;
}
.comic-list .comic-box{
	display: flex;
	align-items: center;
	border: 5px solid;
	border-radius: 50px;
	background-color: #fff;
	padding: 20px;
	padding-bottom: 15px;
	min-height: 280px;
	flex-wrap: wrap;
}
.comic-list .comic-box > a{
	width: 29%;
	min-width: 25%;
    margin: 1% 2%;
	text-align: center;
	text-decoration: none;
	color: #333;
}
.comic-list .comic-box > a img{
	border: 1px solid #ccc;
}
.comic-list .comic-box > a p{
	margin: 0;
	width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	text-align: left;
}
.comic .comic-details-box{
	display: flex;
}
.comic-details-box .comic-img{
	width: 25%;
	text-align: center;
	margin-right: 3%;
}
.comic-details-box .comic-details{
	width: 72%;
}
.comic-details .ttl-box{
	background-color: #fff;
	padding: 10px;
	padding-bottom: 5px;
}
.comic-details .ttl-box h3{
	margin: 0;
	font-size: 130%;
	line-height: 1.3;
	margin-bottom: 10px;
}
.comic-details .ttl-box p{
	margin: 0;
}
.comic-details .details{
	min-height: 3em;
	background-color: rgba(255,255,255,0.5);
	padding: 10px;
	margin-top: 10px;
	line-height: 1.8;
}
.comic .list-box{
	margin-top: 30px;
}
.comic .list-box h4{
	background-color: #fff;
	margin: 0;
	padding: 10px 20px;
}
.comic .list-box .comic-box-wrap{
	margin-top: 5px;
}
.comic .list-box .comic-box{
	display: flex;
	background-color: rgba(255,255,255,0.5);
	padding: 10px;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
.comic .list-box .comic-box .img-box{
	width: 20%;
	padding-right: 20px;
	text-align: right;
}
.comic .list-box .comic-box .img-box img{
	width: 80%;
	vertical-align: middle;
}
.comic .list-box .comic-box .cts-box{
	width: 65%;
	padding: 5px;
	position: relative;
	padding-right: 20%;
	margin-right: 5%;
}
.comic .list-box .comic-box .cts-box p{
	margin: 0;
	width: 90%;
}
.comic .list-box .comic-box .cts-box a{
	background-color: #fff;
	color: #333;
	text-decoration: none;
	font-weight: bold;
	width: 180px;
	display: inline-block;
	text-align: center;
	padding: 15px;
	border: 2px solid #ccc;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
}
.comic-list .comic-box .comic-lead{
	position: relative;
  	padding: 30px;
  	border: 5px solid;
  	border-radius: 20px;
  	margin-left: 10%;
  	margin-bottom: 5%;
  	z-index: 1;
}
.comic-list .comic-box .comic-lead:before,
.comic-list .comic-box .comic-lead:after{
  	content: "";
  	position: absolute;
  	top: 0;
  	bottom: 0;
  	width: 0;
  	height: 0;
  	margin: auto;
}
.comic-list .comic-box .comic-lead:before{
  	left: -40px;
    border-style: solid;
    border-width: 0 0 45px 40px;
}
.comic-list .comic-box .comic-lead:after{
    left: -29px;
    border-style: solid;
    border-color: transparent transparent #fff transparent;
    border-width: 0 0 35px 32px;
    z-index: 10;
}
.comic-list .comic-box .comic-lead h3{
	margin: 0;
	margin-bottom: 10px;
}
.comic-list .comic-box .comic-lead p{
	margin: 0;
}
.comic-list .comic-box .width60{
	width: 60%;
}

/*コラム*/
.column-wrap{
	display: flex;
}
.column-list-wrap{
	width: 35%;
	margin-top: 35px;
}
.column-list-box{
	background-color: #fff;
	border: 5px solid;
	border-radius: 50px;
	position: relative;
	padding-top: 20%;
	padding-bottom: 30px;
}
.column-list-box > img{
	position: absolute;
	top: -95px;
}
.column-list-box > a{
	display: block;
	width: 80%;
	margin: auto;
	text-decoration: none;
	color: #333;
	border-bottom: 2px solid;
	margin-bottom: 30px;
	padding: 0 5px;
}
.column-box-wrap{
	width: 68%;
	margin-left: 2%;
}
.column-box{
	background-color: #fff;
	border: 5px solid;
	padding: 30px 7%;
}
.column-box h2{
	color: #fff;
	text-align: center;
	padding: 10px;
	border-radius: 10px;
	font-weight: normal;
	margin: 0;
}
.column-box h3{
	margin: 0;
	font-size: 130%;
	letter-spacing: 1px;
	margin-top: 30px;
	margin-bottom: 10px;
}
.column-box .bx-wrapper .bx-pager{
	display: none;
}
.column-box .details{
	margin-top: 40px;
}
.column-box .details .cts{
	line-height: 1.8;
	margin: 0;
}
.column .link-box{
	margin-top: 10px;
	overflow: hidden;
}
.column .link-box a{
	text-decoration: none;
	font-size: 115%;
}
.column .link-box .next{
	float: right;
}
.the-mutual{
	margin: 20px 0;
}
.the-mutual a{
	color: #fff;
	text-decoration: none;
	display: block;
	border-radius: 15px;
	padding: 40px 0;
	text-align: center;
	font-size: 160%;
}

/*サイトご利用にあたって*/
.terms-box{
	background-color: #fff;
	border: 5px solid;
	padding: 5%;
	overflow: hidden;
	box-shadow: 0px 0px 10px #888;
}
.terms-ttl{
	text-align: center;
	margin-bottom: 40px;
}
.terms-ttl h2{
	display: inline-block;
	font-size: 180%;
	margin: 0;
	position: relative;
	padding-left: 60px;
	padding-right: 80px;
}
.terms-ttl img{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
	height: 40px;
}
.terms-ttl .ribbon-l{
	left: 0;
}
.terms-ttl .ribbon-r{
	right: 0;
}
.terms-box p{
	line-height: 1.8;
	margin: 0;
}
.terms-details > div{
	margin-top: 40px;
}
.terms-details h3{
	font-size: 130%;
	margin: 0;
	margin-bottom: 5px;
}
.terms-details a{
	text-decoration: none;
	color: red;
}
.terms-box .right{
	float: right;
	margin-top: 5px;
}

/*利用規約*/
.rules-box{
	background-color: #fff;
	border: 5px solid;
	padding: 5%;
	overflow: hidden;
	box-shadow: 0px 0px 10px #888;
}
.rules-ttl{
	text-align: center;
	margin-bottom: 40px;
}
.rules-ttl h2{
	display: inline-block;
	font-size: 180%;
	margin: 0;
	position: relative;
	padding-left: 70px;
	padding-right: 70px;
}
.rules-ttl img{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
	height: 40px;
}
.rules-ttl .ribbon-l{
	left: 0;
}
.rules-ttl .ribbon-r{
	right: 0;
}
.rules-box p{
	line-height: 1.8;
	margin: 0;
}
.rules-details > div{
	margin-top: 40px;
}
.rules-details h3{
	font-size: 130%;
	margin: 0;
	margin-bottom: 5px;
}
.rules-details a{
	text-decoration: none;
	color: red;
}
.rules-details > div ol{
	margin: 0;
	padding-left: 25px;
}
.rules-details > div ol li{
	line-height: 1.8;
}
.rules-details > div ol li div{
	margin-left: 18px;
	margin-bottom: 20px;
}
.rules-box .right{
	float: right;
	margin-top: 5px;
}

/*フコク赤ちゃんクラブとは*/
.about-box-wrap{
	background-color: #fff;
	border: 5px solid;
	padding: 5%;
	box-shadow: 0px 0px 10px #888;
}
.about-ttl{
	text-align: center;
	margin-bottom: 40px;
}
.about-ttl h2{
	display: inline-block;
	font-size: 180%;
	margin: 0;
	position: relative;
	padding-left: 70px;
	padding-right: 70px;
}
.about-ttl img{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
	height: 40px;
}
.about-ttl .ribbon-l{
	left: 0;
}
.about-ttl .ribbon-r{
	right: 0;
}
.about .lead h3{
	color: #E94369;
	font-size: 130%;
	line-height: 1.8;
	margin: 0;
	margin-bottom: 10px;
}
.about .lead p{
	margin: 0;
	line-height: 1.8;
}
.about .lead ul{
	list-style: none;
	padding: 0;
	margin: 30px 0;
}
.about .lead ul li{
	font-weight: bold;
	line-height: 1.8;
	font-size: 115%;
}
.about .benefits-box{
	margin-top: 60px;
}
.about .benefits-box.join h3{
	margin-bottom: 20px;
}
.about .benefits-box.join > img{
	margin-top: 30px;
	margin-bottom: 10px;
}
.about .benefits-box h3{
	width: 40%;
	margin: auto;
	text-align: center;
	color: #fff;
	padding: 10px;
	font-size: 130%;
	font-weight: normal;
	letter-spacing: 1px;
}
.about .benefits-box h4{
	margin: 0;
	font-size: 130%;
	margin-bottom: 5px;
	letter-spacing: 1px;
}
.about .join .bold{
	font-weight: bold;
	font-size: 115%;
	margin-bottom: 5px;
}
.about .benefits-box .color{
	font-weight: bold;
}
.about .benefits-box p{
	margin: 0;
	line-height: 1.8;
}
.about .benefits-box a{
	text-decoration: none;
	letter-spacing: 1px;
}
.about .join a{
	display: block;
	text-align: right;
	margin-top: 5px;
}
.benefits-box.member .col2{
	display: flex;
}
.benefits-box.member .col2 > div{
	width: 46%;
	position: relative;
	padding-bottom: 30px;
}
.benefits-box.member .col2 > div:first-child{
	margin-right: 8%;
}
.benefits-box.member .col2 > div img{
	width: 100%;
}
.benefits-box.member .col2 > div a{
	position: absolute;
	bottom: 0;
	right: 0;
}
.benefits-box.member h4{
	margin-top: 40px;
}
.benefits-box.member .other .text-box{
	display: inline-block;
	text-align: left;
}
.benefits-box.member .other p{
	font-size: 130%;
}
.benefits-box.member .other p a{
	color: #333;
}
.benefits-box.member .other .img-box{
	width: 22%;
	display: inline-block;
}
.benefits-box.member table{
	border-collapse: collapse;
	width: 100%;
}
.benefits-box.member table th{
	color: #fff;
	font-weight: normal;
	padding: 10px;
	border: 2px solid #ddd;
}
.benefits-box.member table td:first-child{
	width: 30%;
}
.benefits-box.member table td:last-child{
	width: 20%;
	text-align: center;
}
.benefits-box.member table td{
	padding: 10px 15px;
	border: 2px solid #ddd;
	vertical-align: top;
	line-height: 1.8;
}
.benefits-box.membership h3{
	margin-bottom: 20px;
}
.benefits-box.membership .details-box{
	margin: 30px 0;
}
.benefits-box.membership .details-box h5{
	font-size: 130%;
	font-weight: bold;
	margin: 0;
	margin-bottom: 5px;
	letter-spacing: 1px;
}
.benefits-box.membership .step-box{
	margin-bottom: 40px;
}
.benefits-box.membership .step{
	display: flex;
	margin-bottom: 10px;
}
.benefits-box.membership .step span{
	font-size: 130%;
}
.benefits-box.membership .step p{
	padding-top: 3px;
}
.about .regist-btn {
	text-align: center;
}
.about .regist-btn a{
	font-size: 200%;
	border: 2px solid #fff;
	box-shadow: 0px 0px 10px #888;
	padding: 20px;
	border-radius: 20px;
	display: inline-block;
	width: 50%;
}
.about .contact-box .error-default{
	margin-top: 80px;
}
.benefits-box#birthday{
	padding-top: 120px;
	margin-top: -80px;
}
.benefits-box#birthday h3{
	margin-bottom: 20px;
}
.benefits-box#birthday h4{
	display: inline-block;
	margin-right: 40px;
	margin-top: 30px;
	margin-bottom: 30px;
}
.benefits-box#birthday .notes .red{
	color: red;
}
.benefits-box.albus{
	margin-top: 20px;
}
.benefits-box.albus .albus-intro{
	text-align: left;
}
.benefits-box.albus .albus-intro h3{
	margin: 0;
	border-radius: 20px;
	width: 30%;
}
.benefits-box.albus .albus-detail{
	display: flex;
}
.benefits-box.albus .albus-detail div{
	padding: 15px;
}
.benefits-box.albus .albus-detail .img-box img{
	width: 100%;
}
.benefits-box.member .img-wrapper {
	height: 350px;
	width: 100%;
	display: inline-flex;
	justify-content: center;
}

.benefits-box.member .col2 > div .img-wrapper img{
	max-height: 100%;
	width:auto;
}

/*サンリオショップ*/
.sanrio-shop-box{
	padding: 5%;
	background-color: #fff;
	border: 5px solid;
	box-shadow: 0px 0px 10px #888;
	padding-bottom: 1%;
}
.sanrio-shop .shop-ttl{
	text-align: center;
	margin-bottom: 30px;
}
.sanrio-shop .shop-ttl h2{
	display: inline-block;
	font-size: 180%;
	margin: 0;
	position: relative;
	padding-left: 70px;
	padding-right: 70px;
}
.sanrio-shop .shop-ttl h2 img{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
	height: 40px;
}
.sanrio-shop .shop-ttl h2 .ribbon-l{
	left: 0;
}
.sanrio-shop .shop-ttl h2 .ribbon-r{
	right: 0;
}
.sanrio-shop .lead{
	text-align: center;
	line-height: 1.8;
}
.sanrio-shop .img-box{
	text-align: center;
	margin-top: 10px;
}
.sanrio-shop-details h3{
	font-size: 130%;
	letter-spacing: 1px;
	margin: 0;
}
.sanrio-shop-details .details-box{
	margin: 30px 0;
}
.sanrio-shop-details .details-box > div{
	margin-left: 30px;
	line-height: 1.8;
}
.sanrio-shop-details .details-box .smail{
	font-size: 90%;
}
.sanrio-shop-details a{
	text-decoration: none;
}
.sanrio-shop-details a.red{
	color: red;
}
.sanrio-shop-details span.red{
	font-weight: bold;
}
.sanrio-shop-details .details-box .flex{
	display: inline-flex;
}

/*サンリオピューロランド*/
.sanrio-puroland-box{
	padding: 5%;
	background-color: #fff;
	border: 5px solid;
	box-shadow: 0px 0px 10px #888;
	padding-bottom: 1%;
}
.puroland-ttl{
	text-align: center;
	margin-bottom: 30px;
}
.puroland-ttl h2{
	display: inline-block;
	font-size: 180%;
	margin: 0;
	position: relative;
	padding-left: 70px;
	padding-right: 70px;
}
.puroland-ttl h2 img{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
	height: 40px;
}
.puroland-ttl h2 .ribbon-l{
	left: 0;
}
.puroland-ttl h2 .ribbon-r{
	right: 0;
}
.sanrio-puroland .lead{
	text-align: center;
	line-height: 1.8;
}
.sanrio-puroland .lead a{
	text-decoration: none;
}
.sanrio-puroland .img-box{
	text-align: center;
	margin-top: 10px;
}
.sanrio-puroland-details h3{
	font-size: 130%;
	letter-spacing: 1px;
	margin: 0;
}
.sanrio-puroland-details .details-box{
	margin: 30px 0;
}
.sanrio-puroland-details .details-box > div{
	margin-left: 30px;
	line-height: 1.8;
}
.sanrio-puroland-details table{
	border-collapse: collapse;
	width: 100%;
	text-align: center;
	margin-bottom: 10px;
}
.sanrio-puroland-details table th{
	color: #fff;
	font-weight: normal;
	padding: 10px;
	border: 2px solid #ddd;
}
.sanrio-puroland-details table td{
	padding: 10px 15px;
	border: 2px solid #ddd;
	vertical-align: top;
	line-height: 1.8;
	vertical-align: middle;
}
.sanrio-puroland-details p{
	margin: 0;
}
.sanrio-puroland .btm-text{
	text-align: center;
	font-size: 90%;
	margin-top: 4%;
}
.sanrio-puroland-details .details-box a{
	text-decoration: none;
}

/*キッズライン・ホットライン*/
.line24-box{
	padding: 5%;
	background-color: #fff;
	border: 5px solid;
	box-shadow: 0px 0px 10px #888;
}
.line24-box .line-ttl{
	text-align: center;
	margin-bottom: 30px;
}
.line24-box .line-ttl h2{
	display: inline-block;
	font-size: 180%;
	margin: 0;
	position: relative;
	padding-left: 70px;
	padding-right: 70px;
}
.line24-box .line-ttl h2 img{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
	height: 40px;
}
.line24-box .line-ttl h2 .ribbon-l{
	left: 0;
}
.line24-box .line-ttl h2 .ribbon-r{
	right: 0;
}
.line24-box .lead{
	text-align: center;
	line-height: 1.8;
}
.line24-box .lead p{
	margin-top: 30px;
}
.line24-box p{
	margin: 0;
}
.line24-box .img-box{
	margin-top: 10px;
	text-align: center;
}
.line24-box h3{
	font-size: 130%;
	letter-spacing: 1px;
	margin: 0;
}
.line-details .details-box{
	margin: 30px 0;
}
.line-details .details-box .details{
	margin-left: 30px;
	line-height: 1.8;
}
.line-details .details-box .flex{
	display: inline-flex;
}
.line24-box .btm-text{
	margin-left: 30px;
}
.line24-box .btm-text a{
	text-decoration: none;
	font-size: 120%;
}

/*今月のプレゼント*/
.present-box-wrap{
	background-color: #fff;
	border: 5px solid;
	box-shadow: 0px 0px 10px #888;
	position: relative;
	padding: 40px;
	padding-top: 70px;
	margin-top: 130px;
}
.present-box-wrap > img{
	position: absolute;
	right: 0;
	left: 0;
	margin: auto;
	top: -135px;
	width: 500px;
}
.present-box .present-ttl{
	text-align: center;
	margin-bottom: 30px;
}
.present-box h2{
	font-size: 180%;
	border-bottom: 5px solid;
	display: inline-block;
	margin: 0;
}
.present-box h3{
	width: 40%;
	margin: auto;
	text-align: center;
	color: #fff;
	padding: 10px;
	font-size: 130%;
	font-weight: normal;
	letter-spacing: 1px;
	margin-top: 40px;
	margin-bottom: 15px;
}
.present-details-box p{
	font-weight: bold;
	line-height: 1.8;
	margin: 0;
}
.present .present-details{
	margin-bottom: 50px;
	font-size: 130%;
}
.present .specification p{
	display: flex;
	font-size: 130%;
}
.present-box .point-wrap{
	margin-bottom: 20px;
}
.present-box .point{
	display: flex;
	padding: 20px 15px;
	margin-top: 40px;
}
.present-box .point > div{
	width: 50%;
}
.present-box .point h4{
	font-size: 130%;
	margin: 0;
	margin-bottom: 10px;
}
.present-box .point .text-box p{
	line-height: 2.5;
}
.present-box .point .img-box{
	padding-left: 20px;
	text-align: center;
}
.present-box .point .img-box img{
	max-height: 350px;
}
.present-box .notes .flex{
	display: flex;
}
.present-box .notes .flex span:first-child{
	width: 125px;
}
.present-box .notes p{
	line-height: 2.5;
}
.present-details-box .link{
	text-align: right;
}
.present .link a{
	text-decoration: none;
	border-bottom: 2px solid;
	font-weight: bold;
	letter-spacing: 1px;
	font-size: 115%;
}
.present .details-box{
	margin-top: 80px;
}
.present .application_details h4{
	font-size: 130%;
	margin: 0;
}
.present .application_details > div > p{
	font-size: 130%;
	line-height: 1.8;
	margin: 10px 0;
	margin-left: 25px;
}
.present .application_details .step{
	margin-left: 25px;
	margin-top: 10px;
}
.present .application_details .step > div{
	display: flex;
}
.present .application_details .step > div span{
	font-weight: bold;
	font-size: 130%;
	letter-spacing: 1px;
	line-height: 1.8;
}
.present .application_details .step p{
	margin: 0;
	line-height: 2.5;
}
.present .btn-box{
	margin: 80px 0;
}
.present .btn-box div{
	text-align: center;
}
.present .btn-box .present-btn{
	margin-bottom: 50px;
}
.present .btn-box div a{
	color: #fff;
	font-size: 200%;
	border: 2px solid #fff;
	box-shadow: 0px 0px 10px #888;
	padding: 20px;
	border-radius: 20px;
	display: inline-block;
	width: 50%;
	text-decoration: none;
	text-align: center;
}
.present .btn-box .regist-btn p{
	margin: 0;
	margin-bottom: 10px;
}
.present .notes-box{
	background-color: #fff;
	border: 5px solid #999;
	padding: 30px 40px;
}
.present .notes-box > div{
	margin: 10px 0;
}
.present .notes-box h4{
	margin: 0;
	margin-bottom: 5px;
	font-size: 110%;
}
.present .notes-box p{
	margin: 0;
	line-height: 1.8;
}
.present .notes-box p a{
	text-decoration-color: red;
    color: #333;
}
.present .past-present{
	padding: 40px;
	margin-top: 30px;
}
.present .past-present h3{
	font-size: 160%;
	margin: 0;
}
.present .past-present p{
	font-size: 130%;
	margin: 0;
	margin-top: 10px;
	margin-left: 25px;
}
.present .past-present .img-box{
	text-align: center;
	margin-top: 15px;
}
.present .past-present .message{
	font-size: 250%;
	text-align: center;
	margin-top: 20px;
}

.seasonal-border-partition {
	height: 10px;
	position: relative;
	margin-bottom: 30px;
}

.seasonal-border-partition::before {
	content: "";
	background-size: 40px 3px;
	background-repeat: repeat-x;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}


/* スペシャルイベント */
.special-event-box-wrap{
	background-color: #fff;
	border: 5px solid;
	box-shadow: 0px 0px 10px #888;
	position: relative;
	padding: 40px;
	padding-top: 70px;
	margin-top: 130px;
}
.special-event-box-wrap .main-img > img{
	width: 100%;
}
.special-event-box-wrap .main-img .image-copyright{
	font-size: 0.8em;
	text-align: right;
}
.special-event-box-wrap > img{
	position: absolute;
	right: 0;
	left: 0;
	margin: auto;
	top: -80px;
	width: 500px;
}
.special-event-box .special-event-ttl{
	text-align: center;
	margin-bottom: 30px;
}
.special-event-box h2{
	font-size: 180%;
	border-bottom: 5px solid;
	display: inline-block;
	margin: 0;
}
.special-event-box h3{
	width: 40%;
	margin: auto;
	text-align: center;
	color: #fff;
	padding: 10px;
	font-size: 130%;
	font-weight: normal;
	letter-spacing: 1px;
	margin-top: 40px;
	margin-bottom: 15px;
}
.special-event-details-box p{
	font-weight: bold;
	line-height: 1.8;
	margin: 0;
}
.special-event .special-event-details{
	margin-bottom: 50px;
	font-size: 130%;
}
.special-event .specification p{
	display: flex;
	font-size: 130%;
	margin: 5px 0 5px 0;
}
.special-event .specification p span{
	min-width: 9em;
}
.special-event-box .point-wrap{
	margin-bottom: 20px;
}
.special-event-box .point{
	display: flex;
	padding: 20px 15px;
	margin-top: 40px;
}
.special-event-box .point h4{
	font-size: 130%;
	margin: 0;
	margin-bottom: 10px;
	text-align: center;
}
.special-event-box .point .text-box p{
	line-height: 2.5;
}
.special-event-box .point .img-box{
	padding-left: 20px;
	text-align: center;
}
.special-event-box .point .img-box img{
	max-height: 350px;
}
.special-event-details-box .link{
	text-align: right;
}
.special-event .link a{
	text-decoration: none;
	border-bottom: 2px solid;
	font-weight: bold;
	letter-spacing: 1px;
	font-size: 115%;
}
.special-event .details-box{
	margin-top: 80px;
}
.special-event .notification h4{
	font-size: 130%;
	margin: 0;
}
.special-event .notification > div > p{
	font-size: 130%;
	margin: 0 0 10px 0;
	margin-left: 25px;
}
.special-event .notification .item{
	margin-left: 25px;
	margin-top: 10px;
}
.special-event .notification .item > div{
	display: flex;
}
.special-event .notification .item > div span{
	font-weight: bold;
	letter-spacing: 1px;
}
.special-event .notification .item p{
	margin: 0 0 10px 0;
}
.special-event .btn-box{
	margin: 80px 0;
}
.special-event .btn-box div{
	text-align: center;
}
.special-event .btn-box .special-event-btn{
	margin-bottom: 50px;
}
.special-event .btn-box div a{
	color: #fff;
	font-size: 200%;
	border: 2px solid #fff;
	box-shadow: 0px 0px 10px #888;
	padding: 20px;
	border-radius: 20px;
	display: inline-block;
	width: 50%;
	text-decoration: none;
	text-align: center;
}
.special-event .btn-box .regist-btn p{
	margin: 0;
	margin-bottom: 10px;
}
/* スペシャルイベント */

/*イベント*/
.event-box-wrap{
	border: 5px solid;
	background-color: #fff;
	padding: 40px;
	box-shadow: 0px 0px 10px #888;
}
.event-box-wrap h2{
	color: #fff;
	text-align: center;
	font-weight: normal;
	padding: 10px;
	width: 50%;
	margin: auto;
	border-radius: 10px;
	letter-spacing: 1px;
	margin-bottom: 40px;
}
.event-box-wrap h3{
	font-size: 150%;
	margin: 0;
	text-align: center;
	color: #e84566;
}
.event-box-wrap h3 img{
	height: 36px;
	vertical-align: middle;
}
.event-box-wrap h3 .ribbon-l{
	margin-right: 2%;
}
.event-box-wrap h3 .ribbon-r{
	margin-left: 2%;
}
.event .event-inner{
	width: 95%;
	margin: auto;
}
.event-inner .search-box{
	border: 3px solid;
	border-radius: 10px;
	margin-top: 20px;
}
.event-inner .search-box h4{
	margin: 0;
	color: #fff;
	font-weight: normal;
	font-size: 130%;
	padding: 10px 5%;
}
.event-inner .search-box table{
	width: 90%;
	margin: 20px auto;
}
.event-inner .search-box table th{
	color: #e84566;
	font-size: 110%;
	width: 13%;
	padding: 10px 0;
	min-width: 100px;
}
.event-inner .search-box table td.width30{
	width: 30%;
}
.event-inner .search-box table td span{
	font-weight: bold;
}
.event-inner .search-box .col2 .select-box{
	width: 44%;
}
.event-inner .search-box .select-box{
	max-width: 220px;
	width: 95%;
}
.event-inner .search-box .select-box::before{
	top: 12px;
}
.event-inner .search-box table select{
	font-size: 110%;
	border: 2px solid;
	border-radius: 0;
	padding: 5px 15px;
	background-color: #fff;
	padding-right: 30px;
	width: 100%;
}
.event-inner .event-list-box{
	margin-top: 50px;
	border: 3px solid;
	border-radius: 10px;
}
.event-inner .event-list-box table{
	width: 100%;
	border-collapse: collapse;
}
.event-inner .event-list-box table th{
	color: #fff;
	font-size: 120%;
	font-weight: normal;
	padding: 15px 0 5px 0;
}
.event-inner .event-list-box table th.width40{
	width: 40%;
}
.event-inner .event-list-box table td{
	text-align: center;
	padding: 15px;
}
.event-inner .event-list-box table td a{
	text-decoration: none;
	color: #333;
}
.event-inner .event-list-box table td:nth-child(5){
	max-width: 380px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	text-align: left;
}
.event-inner .event-list-box table tbody tr{
	border-bottom: 2px solid;
}
.event-inner .event-list-box table tbody tr:last-child{
	border-bottom: none;
}
.event-inner .event-list-box table td span{
	color: #fff;
	padding: 7px;
	display: block;
}
.event-inner .event-list-box table td .experience{
	background-color: #ed1e79;
}
.event-inner .event-list-box table td .kids{
	background-color: #ff6600;
}
.event-inner .pager{
	text-align: center;
	padding: 0;
	overflow: hidden;
}
.event-inner .pager li{
	display: inline-block;
	font-size: 130%;
	vertical-align: middle;
	margin: 0 2px;
}
.event-inner .pager li.prev{
	float: left;
}
.event-inner .pager li.next{
	float: right;
}
.event-inner .pager li.this{
	font-weight: bold;
	font-size: 150%;
}
.event-inner .pager li a{
	text-decoration: none;
}
.event .event-details{
	margin-top: 20px;
}
.event .event-details h4{
	font-size: 115%;
	color: #e94568;
	margin: 0;
	font-weight: normal;
}
.event .event-details table{
	width: 100%;
	border-collapse: collapse;
}
.event .event-details table th{
	width: 25%;
	color: #fff;
	font-size: 115%;
	letter-spacing: 1px;
	font-weight: normal;
	position: relative;
}
.event .event-details table th:before{
	content: "";
	position: absolute;
	top: 50%;
	left: 100%;
	margin-top: -20px;
	border: 20px solid transparent;
	border-left: 20px solid;
}
.event .event-details table td{
	background-color: #ddd;
	padding: 20px 30px;
	line-height: 1.8;
	padding-left: 40px;
}
.event .event-details table tr{
	border-bottom: 10px solid #fff;
}
.event .link{
	margin-top: 15px;
}
.event .link a{
	text-decoration: none;
	font-size: 130%;
}

/*QRコード*/
.code-box-wrap{
	background: url(../img/bg_ribbon_spring.png);
	background-size: 700px;
	position: relative;
	text-align: center;
	padding: 5%;
	padding-top: 120px;
	border-radius: 50px;
	margin-top: 80px;
}
.code-box-wrap h2{
	margin: 0;
}
.code-box-wrap h2 img{
	position: absolute;
	right: 0;
	left: 0;
	margin: auto;
	top: -102px;
	width: 500px;
}
.code-box .btn-box{
	margin-top: 40px;
}
.code-box{
	width: 40%;
	margin: auto;
}
.code-box .qr-code{
	width: 90%;
}
.code-box .btn-box a{
	background-color: #fd6c9b;
	color: #fff;
	text-decoration: none;
	font-size: 130%;
	padding: 10px;
	display: block;
	border-radius: 20px;
}

/*今日なに作る？*/
.roulette .headline{
	text-align: center;
}
.roulette-box-wrap{
	border-radius: 50px;
	padding: 5%;
	position: relative;
	margin-top: 100px;
	padding-top: 110px;
}
.roulette-box-wrap h2{
	margin: 0;
}
.roulette-box-wrap h2 img{
	position: absolute;
	right: 0;
	left: 0;
	margin: auto;
	top: -102px;
	width: 500px;
}
.roulette-box-wrap .lead{
	margin: 20px 0;
	text-align: center;
	font-size: 110%;
	font-weight: bold;
}
.roulette-help .roulette-box-wrap{
	background: none;
	padding: 0;
	padding-top: 100px;
}
.roulette-help .lead{
	margin-top: 20px;
}
.roulette-step-box{
	display: flex;
}
.roulette-step-box .step-box{
	width: 30%;
	margin: 2%;
	background-color: rgba(255,255,255,0.8);
	position: relative;
	padding-top: 16%;
	margin-top: 17%;
	text-align: center;
	font-weight: bold;
	font-size: 21px;
	padding-bottom: 40px;
}
.roulette-step-box .step-box > img{
	position: absolute;
	top: -50%;
	right: 0;
}
.roulette-step-box .step-box .arrow{
	left: 100%;
	top: -10%;
	width: 14%;
}
.roulette-step-box .step-box span{
	border-bottom: 3px solid;
	padding: 0 5px;
	line-height: 1.2;
	display: inline-block;
}
.roulette-step-box .step-box p{
	line-height: 1.8;
	margin: 0;
	margin-top: 10px;
}
.roulette-img-wrap{
	max-width: 70%;
	margin: 0 auto;
	position: relative;
}
.needle-wrap{
	position: relative;
	margin-bottom: -60px;
	z-index: 2;
	text-align: center;
}
.result{
	display: none;
	position: absolute;
	z-index: 3;
	background-color: rgba(255,255,255,0.95);
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
	padding: 30px 40px;
	padding-bottom: 50px;
	width: 50%;
}
.result p{
	margin: 0;
	line-height: 1.5;
	font-weight: bold;
	font-size: 115%;
}
.result-img-wrap{
	width: 60%;
	margin: 0 auto;
	position: relative;
	margin-top: 20px;
	margin-bottom: 20px;
}
.result .btn-box{
	text-align: center;
}
.result .btn-box .btn{
	color: #fff;
	border: none;
	border-radius: 50px;
	font-size: 1rem;
	width: 40%;
	margin: 0 1%;
	padding: 10px;
	outline: none;
	text-decoration: none;
	cursor: pointer;
}
.needle-wrap img{
	height: 60px;
}
.roulette-box{
	overflow: hidden;
	margin-top: 10px;
}
.js-start-btn{
	position: absolute;
	top: 50%;
	left: 50%;
	cursor: pointer;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
}
.roulette-recipe{
	position: absolute;
	margin: auto;
	width: 23%;
	text-align: center;
	height: 28%;
}
.roulette-recipe .img-box{
	height: 80px;
	width: 140px;
	overflow: hidden;
	padding-bottom: 3px;
	margin: auto;
}
.roulette-recipe img{
	height: 100%;
	width: 100%;
	object-fit: cover;
}
.roulette-recipe.yellow{
	top: 17%;
	left: 25%;
	transform: rotate(324deg);
}
.roulette-recipe.pink{
	top: 18%;
	right: 24%;
	transform: rotate(36deg);
}
.roulette-recipe.orange{
	top: 28%;
    right: 27%;
	transform: rotate(108deg) translate(50%, -50%)
}
.roulette-recipe.blue{
	bottom: 14%;
	left: 50%;
	transform: translateX(-50%) rotate(180deg);
}
.roulette-recipe.green{
    top: 43%;
    left: 15%;
	transform: rotate(252deg);
}
.roulette a .roulette-recipe p{
	color: #333;
}
.roulette-recipe p{
	margin: 0;
	font-size: 80%;
}
.roulette .rc-button{
	text-align: center;
	margin-top: 50px;
}
.roulette .rc-button button{
    border: 2px solid #fff;
    font-size: 150%;
    width: 30%;
    border-radius: 20px;
    box-shadow: 0px 0px 10px #888;
    outline: none;
    background-color: #fe6c9b;
	color: #fff;
	cursor: pointer;
	padding: 20px;
}

/*小児科オンライン*/
.online-box{
	padding: 5%;
	background-color: #fff;
	border: 5px solid;
	box-shadow: 0px 0px 10px #888;
}
.online-box .online-ttl{
	text-align: center;
	margin-bottom: 30px;
}
.online .online-ttl h2{
	display: inline-block;
	font-size: 160%;
	margin: 0;
	position: relative;
	padding-left: 70px;
	padding-right: 70px;
}
.online .online-ttl h2 img{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	height: 40px;
}
.online-box .lead{
	text-align: center;
}
.online-box .img-box{
	text-align: center;
	margin-top: 10px;
}
.online-box .img-box.logo-image{
	margin-top: 0;
	width: 50%;
}
.online .online-ttl h2 .ribbon-l{
	left: 0;
}
.online .online-ttl h2 .ribbon-r{
	right: 0;
}
.online-box .cts-box{
	margin: 30px 0;
}
.online-box .cts-box > div{
	margin-left: 30px;
}
.online-box p{
	margin: 0;
	line-height: 1.8;
}
.online-box h3{
	font-size: 130%;
	letter-spacing: 1px;
	margin: 0;
}
.online-box h4{
	margin: 0;
	line-height: 1.8;
	font-size: 110%;
}
.online-box .bottom10{
	margin-bottom: 10px;
}
.online-box .left20{
	margin-left: 20px;
}
.online-box .cts-box a.btn{
	color: #666;
	border-radius: 10px;
	padding: 13px 25px;
	font-size: 115%;
	margin-bottom: 5px;
}
.online-box .cts-box ol{
	margin: 0;
	padding-left: 50px;
}
.online-box .cts-box a{
	text-decoration: none;
}
.online-box .cts-box .list{
	padding-left: 25px;
}
.online-box .cts-box .list p{
	display: flex;
}
.online-box .cts-box .list ul{
	margin: 0;
	list-style: none;
	padding-left: 18px;
}
.plattalks .movie-wrap iframe,
.online-box .movie-wrap iframe {
	max-width: 100%;
}

/*小児科オンラインジャーナル*/
.online-journal-wrap{
	display: flex;
}
.journal-list-wrap{
	width: 35%;
	margin-top: 35px;
}
.journal-list-box{
	background-color: #fff;
	border: 5px solid;
	border-radius: 50px;
	position: relative;
	padding-top: 20%;
	padding-bottom: 30px;
	margin-bottom: 30px;
}
.journal-list-box > img {
	position: absolute;
	top: -95px;
}
.journal-list-box div > p{
	margin-top: 0;
	margin-bottom: 10px;
	font-weight: bold;
	font-size: 110%;
}
.journal-list-box a{
	display: block;
	margin: auto;
	text-decoration: none;
	color: #333;
	margin-bottom: 10px;
}
.journal-list-box a span{
	padding-right: 5px;
}
.pediatrics-list{
	width: 85%;
	margin: auto;
}
.obstetrics-list{
	width: 85%;
	margin: auto;
	margin-top: 30px;
}
.journal-list-wrap .link-btn a{
	color: #fff;
	text-decoration: none;
	display: block;
	border-radius: 15px;
	padding: 30px 0;
	text-align: center;
	font-size: 115%;
	margin: 20px 0;
}
.journal-box-wrap{
	width: 68%;
	margin-left: 2%;
}
.journal-box{
	background-color: #fff;
	border: 5px solid;
	padding: 30px 5%;
}
.journal-box .list-box{
	padding: 20px;
	margin-top: 30px;
	overflow: hidden;
}
.journal-box .details a{
	word-break: break-all;
	text-decoration: none;
}
.journal-box .list-box .details a{
	text-decoration: none;
	float: right;
	margin-top: 10px;
}
.journal-box .list-box .img-box{
	margin-bottom: 10px;
}
.journal-box h2{
	color: #fff;
	text-align: center;
	padding: 10px;
	border-radius: 10px;
	font-weight: normal;
	margin: 0;
	margin-bottom: 30px;
}
.journal-box p{
	margin: 0;
	line-height: 1.8;
}
.journal-box .date{
	color: #999;
	font-weight: bold;
}
.journal-box h3{
	margin: 0;
	line-height: 1.8;
	font-size: 130%;
}
.journal-box h4{
	margin: 30px 0;
}
.journal-box .img-box{
	text-align: center;
	margin-top: 10px;
	margin-bottom: 30px;
}
.online-journal .link-box{
	margin-top: 10px;
	overflow: hidden;
}
.online-journal .link-box a{
	text-decoration: none;
	font-size: 115%;
}
.online-journal .link-box .next{
	float: right;
}
.online-journal .tag{
	margin-top: 40px;
}
.tag ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
.tag ul li {
	display: inline-block;
	margin: 0 0 .3em 1em;
	padding: 0;
}
.tag ul li a {
	position: relative;
	display: inline-block;
	height: 30px;
	line-height: 30px;
	padding: 0 1em;
	border-radius: 0 3px 3px 0;
	color: #fff;
	font-size: 13px;
	text-decoration: none;
	-webkit-transition: .2s;
	transition: .2s;
	margin-right: 5px;
}
.tag ul li a::before {
	position: absolute;
	top: 0;
	left: -15px;
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 15px 15px 15px 0;
	-webkit-transition: .2s;
	transition: .2s;
}
.tag ul li a::after {
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 2;
	display: block;
	content: '';
	width: 6px;
	height: 6px;
	margin-top: -3px;
	background-color: #fff;
	border-radius: 100%;
}
.tag ul li span {
	display: block;
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
}
.tag ul li a:hover {
	background-color: #555;
	color: #fff;
}
.tag ul li a:hover::before {
	border-right-color: #555;
}

/*PlaTTalks*/
.plattalks-box{
	padding: 5%;
	background-color: #fff;
	border: 5px solid;
	box-shadow: 0px 0px 10px #888;
}
.plattalks-box .plattalks-ttl{
	text-align: center;
	margin-bottom: 30px;
}
.plattalks .plattalks-ttl h2{
	display: inline-block;
	font-size: 160%;
	margin: 0;
	position: relative;
	padding-left: 70px;
	padding-right: 70px;
}
.plattalks .plattalks-ttl h2 img{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	height: 40px;
}
.plattalks-box .lead{
	text-align: left;
}
.plattalks-box .lead span{
	font-weight: bold;
	color: #ff0000;
}
.plattalks-box .img-box{
	text-align: center;
	margin-top: 10px;
}
.plattalks-box .img-box.logo-image{
	margin-top: 0;
	width: 50%;
}
.plattalks-box .img-box.logo-image.app-image{
	margin-top: 0;
	width: 80%;
}
.plattalks-box .img-box.logo-image.app-store-image{
	padding-left: 10px;
	width:40%;
}
.plattalks-box .img-box.logo-image.app-store-image img{
	display: block;
}
.plattalks-box .img-box.logo-image.google-play-image{
	padding-left: 10px;
	width:40%;
}
.plattalks-box .img-box.logo-image.google-play-image img{
	display: block;
}
.plattalks .plattalks-ttl h2 .ribbon-l{
	left: 0;
}
.plattalks .plattalks-ttl h2 .ribbon-r{
	right: 0;
}
.plattalks-box .cts-box{
	margin: 30px 0;
}
.plattalks-box .cts-box > div{
	margin-left: 30px;
}
.plattalks-box .app-dl-box{
	display: flex;
}
.plattalks-box .app-dl-box .app-logo{
	width: 20%;
	display: flex;
	justify-content: center;
	padding-left: 10px;
}
.plattalks-box .app-dl-box .store-logo{
	width: 80%;
}
.plattalks-box .app-dl-box .app-store{
	height: 50%;
	display: flex;
	align-items: center;
	justify-content: left;
}
.plattalks-box .app-dl-box .app-store-ref{
	width: 30%;
	height: 50%;
	display: flex;
	align-items: center;
	justify-content: right;
}
.plattalks-box .app-dl-box .app-store-logo{
	width: 70%;
}
.plattalks-box .app-dl-box .google-play{
	height: 50%;
	display: flex;
	align-items: center;
	justify-content: left;
}
.plattalks-box .app-dl-box .google-play-ref{
	width: 30%;
	height: 50%;
	display: flex;
	align-items: center;
	justify-content: right;
}
.plattalks-box .app-dl-box .google-play-logo{
	width: 70%;
}
.plattalks-box p{
	margin: 0;
	line-height: 1.8;
}
.plattalks-box h3{
	font-size: 130%;
	letter-spacing: 1px;
	margin: 0;
}
.plattalks-box h4{
	margin: 0;
	line-height: 1.8;
	font-size: 110%;
}
.plattalks-box .bottom10{
	margin-bottom: 10px;
}
.plattalks-box .left20{
	margin-left: 20px;
}
.plattalks-box .cts-box a.btn{
	color: #666;
	border-radius: 10px;
	padding: 13px 25px;
	font-size: 115%;
	margin-bottom: 5px;
}
.plattalks-box .cts-box a{
	text-decoration: none;
}
.plattalks-box .cts-box .app-contact{
	display: flex;
}
.plattalks-box .cts-box .app-contact .img-box.logo-image{
	width: 30%;
	display:flex;
	align-items: center;
	justify-content: center;
}
.plattalks-box .cts-box .app-contact .left20{
	width: 70%;
	display:flex;
	align-items: center;
	justify-content: left;
}
.plattalks-box .cts-box ul{
	margin-top: 0px;
	padding-left: 20px;
}
.plattalks-box .cts-box .first-free span{
	color: #ff0000;
}
.plattalks-box .cts-box .manual span{
	font-weight: bold;
	text-decoration: underline;
}
/*レシピ*/
.recipe-wrap{
	display: flex;
}
.recipe-list-wrap{
	width: 35%;
	margin-top: 35px;
}
.recipe-list-box{
	background-color: #fff;
	border: 5px solid;
	border-radius: 50px;
	position: relative;
	padding-top: 15%;
	padding-bottom: 20px;
	margin-bottom: 30px;
}
.recipe-list-wrap div.profile p.title{
	font-weight: bold;
	text-align: center;
}
.recipe-list-wrap div.center-box{
	text-align: center;
	margin-top: 20px;
}
.recipe-list-wrap div.center-box .profile-photo{
	width: 90%;
}
.recipe-list-box .past-list{
	width: 90%;
	margin: auto;
	margin-top: 15px;
}
.recipe-list-box .past-list p{
	margin: 0;
	color: #fff;
	padding: 5px 10px;
	margin-top: 15px;
	cursor: pointer;
}
.recipe-list-box .past-list p .close{
	display: none;
}
.recipe-list-box .past-list p.active .close{
	display: inline-block;
}
.recipe-list-box .past-list p.active .open{
	display: none;
}
.recipe-list-box .past-list p span{
	margin-right: 5px;
}
.recipe-list-box .past-list .past-box{
	width: 90%;
	margin: auto;
}
.recipe-list-box .past-list .past-box div{
	width: 90%;
	margin: auto;
	margin-top: 10px;
	margin-bottom: 25px;
	display: none;
}
.recipe-list-box .past-list .past-box a{
	display: block;
	text-decoration: none;
	color: #333;
	font-size: 90%;
	border-bottom: 2px solid;
	margin-bottom: 10px;
	padding: 5px 10px;
}
.recipe-month{
	display: none;
}
.recipe-month.block{
	display: block;
}
.recipe-box-wrap{
	width: 68%;
	margin-left: 2%;
}
.recipe-list-box > img {
	position: absolute;
	top: -95px;
}
.recipe-list-box > a{
	display: block;
	width: 80%;
	margin: auto;
	text-decoration: none;
	color: #333;
	border-bottom: 2px solid;
	margin-bottom: 10px;
	padding: 5px;
}
.recipe-list-box .past-link{
	text-align: center;
	margin-top: 40px;
}
.recipe-list-box .past-link a{
	color: #fff;
	text-decoration: none;
	display: inline-block;
	padding: 5px 10px;
	border-radius: 10px;
}
.recipe-list-wrap .link-btn a{
	color: #fff;
	text-decoration: none;
	display: block;
	border-radius: 15px;
	padding: 20px 0;
	text-align: center;
	font-size: 130%;
	margin: 20px 0;
}
.recipe-box{
	background-color: #fff;
	border: 5px solid;
	padding: 30px 7%;
}
.recipe-box p{
	margin: 0;
	line-height: 1.8;
}
.recipe-box h2{
	color: #fff;
	padding: 10px;
	border-radius: 10px;
	font-weight: normal;
	margin: 0;
	text-align: center;
}
.recipe-box h2 span{
	font-size: 90%;
	margin-right: 20px;
}
.recipe-box .food-main-box h4{
	margin: 0;
	margin-top: 20px;
	font-size: 115%;
}
.recipe-box .food-main-box p{
	font-size: 80%;
}
.recipe-box .food-main-box .food-list{
	margin-top: 20px;
}
.recipe-box .food-main-box .food-list div{
	width: 80%;
	margin: auto;
	margin-top: 20px;
	display: flex;
	flex-wrap: wrap;
}
.recipe-box .food-main-box .food-list div a{
	width: 46%;
	margin: 1% 2%;
	text-decoration: none;
	color: #333;
}
.recipe-box .food-main-box .food-list div a img{
	vertical-align: bottom;
}
.recipe-box .food-box{
	padding: 20px;
	margin-top: 30px;
}
.recipe-box .material{
	display: flex;
	margin-top: 30px;
	margin-bottom: 20px;
}
.recipe-box .material .left-box{
	width: 52%;
	margin-right: 3%;
}
.recipe-box .material .right-box{
	width: 45%;
}
.recipe-box .material .right-box .title{
	font-weight: bold;
}
.recipe-box .material .right-box .content p{
	margin: 5px 0;
}
.recipe-box h3{
	color: #fff;
	font-size: 21px;
	display: inline-block;
	padding: 10px 50px;
	font-weight: normal;
	border-radius: 10px;
	margin: 0;
}
.recipe-box .making .content{
	margin: 20px 0;
}
.recipe-box .making .content table{
	width: 100%;
}
.recipe-box .making .content table th{
	vertical-align: top;
}
.recipe-box .making .content table th span{
	border: 3px solid;
	width: 35px;
	display: inline-block;
	height: 30px;
	padding-top: 5px;
	border-radius: 50%;
}
.recipe-box .making .content table td{
	padding: 8px 20px;
	line-height: 1.8;
}
.recipe-box .advice > div{
	margin-top: 20px;
}
.recipe-box .marie-recipe{
	margin-bottom: 40px;
}
.recipe .link-box {
	margin-top: 10px;
	overflow: hidden;
}
.recipe .link-box a{
	text-decoration: none;
	font-size: 115%;
}
.recipe .link-box .next{
	float: right;
}
.recipe-lead{
	text-align: center;
	margin-bottom: 50px;
	margin-top: -30px;
	font-weight: bold;
	font-size: 110%;
}

/* ↓ 一時的なstyle フォトコン（2021年9月末まで）バナー終了の際に削除 */
.recipe-list-box{
	margin-top: 60px;
}
.recipe-list-wrap{
	margin-top: 0px;
}

.roulette .banner_box{
	text-align: center;
	margin-top: 30px;
}
/* ↑ */

/*0円遊び場*/
.leisure-wrap{
	display: flex;
}
.leisure-list-wrap {
	width: 35%;
	margin-top: 35px;
}
.leisure-list-box{
	background-color: #fff;
	border: 5px solid;
	border-radius: 50px;
	position: relative;
	padding-top: 20%;
	padding-bottom: 20px;
	margin-bottom: 30px;
}
.leisure-list-box > img{
	position: absolute;
	top: -95px;
}
.leisure-list-box > a{
	display: block;
	width: 80%;
	margin: auto;
	text-decoration: none;
	color: #333;
	border-bottom: 2px solid;
	margin-bottom: 30px;
	padding: 0 5px;
}
.leisure-box-wrap{
	width: 68%;
	margin-left: 2%;
}
.leisure-box{
	background-color: #fff;
	border: 5px solid;
	padding: 30px 5%;
}
.leisure-box h2{
	color: #fff;
	padding: 10px;
	border-radius: 10px;
	font-weight: normal;
	margin: 0;
	text-align: center;
}
.leisure-box h3{
	margin: 0;
	margin-bottom: 10px;
	font-size: 130%;
}
.leisure-box .lead-box{
	margin: 30px 0;
	text-align: center;
}
.leisure-box .lead-box h4{
	margin: 0;
}
.leisure-box p{
	margin: 0;
	line-height: 1.8;
	font-size: 90%;
}
.leisure-box .leisure-cts{
	padding: 20px;
	text-align: center;
	margin-top: 30px;
}
.leisure-box .leisure-cts h3{
	display: inline-block;
	border-bottom: 2px solid;
	padding: 0 5px;
}
.leisure-box .leisure-cts img{
	margin: 10px 0;
}
.leisure-box .leisure-cts .details{
	text-align: left;
}
.leisure-cts .details .flex{
	display: inline-flex;
}
.leisure-cts .details .flex span:first-child{
	flex: none;
}
.leisure-box .leisure-cts .date{
	text-align: right;
	margin-top: 40px;
}
.leisure .link-box{
	margin-top: 10px;
	overflow: hidden;
}
.leisure .link-box a{
	text-decoration: none;
	font-size: 115%;
}
.leisure .link-box .next{
	float: right;
}

/*キャンペーン*/
.campaign-box-wrap{
	background-color: #fff;
	border: 5px solid;
	box-shadow: 0px 0px 10px #888;
	position: relative;
	padding: 70px 40px;
	margin-top: 130px;
}
.campaign-box-wrap > img{
	position: absolute;
	right: 0;
	left: 0;
	margin: auto;
	top: -135px;
	width: 500px;
}
.campaign-box{
	text-align: center;
}
.campaign-box .campaign-ttl{
	display: inline-block;
    background: #ffe9ed;
    padding: 40px 40px;
    padding-bottom: 20px;
    border-radius: 30px;
    margin-bottom: 30px;
    margin-top: 30px;
    width: 80%;
    position: relative;
}
.campaign-box .campaign-ttl > div{
	display: inline-block;
}
.campaign-box .campaign-ttl .member_only{
	width: 18%;
    transform: rotate(-20deg);
    margin-bottom: 5px;
    position: absolute;
    left: 3%;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.campaign-box .campaign-ttl .member_only img{
	transform: rotate(-20deg);
}
.campaign-box .campaign-ttl .kitty{
	width: 13%;
    position: absolute;
    bottom: 30px;
    right: 7%;
}
.campaign-box .campaign-ttl h2{
	font-size: 200%;
	display: inline-block;
	margin: 0;
	color: #eb612a;
}
.campaign-box .campaign-ttl h2 span{
	display: block;
	font-size: 60%;
	padding-bottom: 5px;
	color: #717171;
}
.campaign-box .campaign-ttl h3{
	margin: 0;
	margin-bottom: 10px;
	color: #fe6d9c;
}
.campaign-box .present-btn{
	margin-bottom: 20px;
}
.campaign-details-top{
	display: flex;
	margin-top: 50px;
}
.campaign-details-top h3{
	line-height: 1.8;
	font-size: 130%;
	margin: 0;
	display: inline-block;
}
.campaign-details-top .left-box{
	background-color: #fef4d6;
	margin-right: 3%;
	margin-bottom: 20px;
	padding: 20px 10px;
	width: 47%;
}
.campaign-details-top .left-box h3{
	color: #284399;
}
.campaign-details-top .left-box h3 span{
	font-size: 55%;
    text-align: right;
    display: block;
    color: #333;
    font-weight: normal;
    line-height: 1.2;
}
.campaign-details-top .left-box .note{
	font-size: 70%;
	margin: 0;
	margin-top: 20px;
}
.campaign-details-top .campaign-num{
	position: absolute;
	width: 45%;
	left: -25%;
	bottom: 0;
}
.campaign-details-top .left-box .img-box{
	width: 55%;
	margin: auto;
	position: relative;
}
.campaign-details-top .right-box{
	background-color: #ebf3d9;
	padding: 20px 10px;
	position: relative;
	width: 50%;
}
.campaign-details-top .right-box h3{
	color: #008666;
	text-align: left;
}
.campaign-details-top .right-box .price{
	font-size: 69%;
    font-weight: normal;
    color: #333;
    margin-left: 10px;
}
.campaign-details-top .further{
	position: absolute;
	width: 70px;
    left: -20px;
    top: -20px;
}
.campaign-details-top .right-box .img-box{
	width: 60%;
	margin: auto;
	margin-top: 10px;
	border: 5px solid #008666;
	border-radius: 10px 10px 0 0;
}
.campaign-details-top .right-box .img-box img{
	vertical-align: bottom;
}
.campaign-details-top .right-box .img-box h4{
	background-color: #008666;
	color: #fff;
	margin: 0;
	font-size: 120%;
	font-weight: normal;
	padding-top: 5px;
}
.campaign-details-top .right-box .img-box .yellow{
	color: #ffe100;
}
.campaign-details-top .right-box .note{
	display: inline-block;
	margin: auto;
	margin-top: 20px;
}
.campaign-details-top .right-box .note p{
	margin: 0;
	font-size: 70%;
	text-align: left;
}
.campaign-details-top .right-box .note p.flex{
	display: flex;
}
.campaign-details-btm{
	background-color: #ebf3d9;
	padding: 20px 40px;
	margin-bottom: 60px;
	text-align: left;
}
.campaign-details-btm h3{
	margin: 0;
	display: inline-block;
	background-color: #008666;
	color: #fff;
	font-size: 105%;
	font-weight: normal;
	width: 180px;
	text-align: left;
	padding: 0 10px;
	position: relative;
	height: 30px;
	margin-right: 30px;
}
.campaign-details-btm h3:before{
	content: "";
	width: 0;
    height: 0;
   	border-bottom: 30px solid #008666;
   	border-right: 20px solid transparent;
   	right: -20px;
   	position: absolute;
   	top: 0;
}
.campaign-details-btm h3 span{
	position: absolute;
    top: 50%;
    left: 20px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.campaign-details-btm .left-box{
	width: 50%;
	margin-right: 5%;
}
.campaign-details-btm > div{
	margin: 20px 0;
}
.campaign-details-btm > div > div{
	padding: 0 20px;
	margin-top: 10px;
}
.campaign-details-btm div p{
	margin: 0;
}
.campaign-details-btm .green{
	color: #008666;
	font-size: 90%;
	font-weight: bold;
}
.campaign-details-btm div ul{
	padding: 0;
	margin: 0;
	margin-top: 15px;
}
.campaign-details-btm div ul li{
	display: block;
	margin: 10px 0;
}
.campaign-details-btm div ul li span{
	background-color: #008666;
	color: #fff;
	font-size: 80%;
	padding: 2px 5px;
	border-radius: 10px;
	display: inline-block;
	vertical-align: text-top;
	margin-right: 10px;
	letter-spacing: 1px;
}
.campaign-details-btm div ul li p{
	margin: 0;
	display: inline-block;
}

.campaign-box .btn-box a{
	color: #fff;
    font-size: 180%;
    border: 2px solid #fff;
    box-shadow: 0px 0px 10px #888;
    padding: 20px;
    border-radius: 20px;
    display: inline-block;
    width: 50%;
    text-decoration: none;
    text-align: center;
}
.campaign-box .btn-box p{
	margin-bottom: 7px;
}
.campaign-box .btn-box p br{
	display: none;
}
.campaign-box .btn-box.lottery{
	margin-bottom: 60px;
}
.campaign-box .campaign-step{
	margin-bottom: 30px;
}
.campaign-box .campaign-step h3{
	margin: 0;
    color: #fa4242;
    font-size: 200%;
    margin-bottom: 10px;
}

/*リロクラブ*/
.reloclub-box-wrap{
	background-color: #fff;
	border: 5px solid;
	box-shadow: 0px 0px 10px #888;
	position: relative;
	padding: 90px 40px;
	margin-top: 130px;
}
.reloclub-box-wrap > img{
	position: absolute;
	right: 0;
	left: 0;
	margin: auto;
	top: -135px;
	width: 500px;
}
.reloclub-box-wrap .btn-wrap{
	margin-bottom: 30px;
}
.reloclub-box .lead{
	font-size: 130%;
	text-align: center;
	max-width: 830px;
	margin: auto;
	line-height: 1.8;
	font-weight: bold;
	margin-top: 10px;
}
.reloclub-box .details-wrap{
	display: flex;
	flex-wrap: wrap;
	margin-top: 20px;
}
.reloclub-box .details-wrap > div{
	width: 50%;
	text-align: center;
	margin-bottom: 30px;
}
.reloclub-box .details-wrap > div img{
	vertical-align: bottom;
}
.reloclub-box .details-wrap > div p{
	line-height: 1.8;
	font-size: 115%;
	margin: 0;
}
.reloclub-box .campaign-box{
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 30px;
}
.reloclub-box .campaign-box img{
	width: 15%;
}
.reloclub-box .campaign-box p{
	font-size: 115%;
	line-height: 1.8;
	text-align: left;
	margin: 0;
	margin-left: 15px;
}
.reloclub-box .btn-wrap{
	text-align: center;
	margin-top: 30px;
}
.reloclub-box .btn-wrap a{
	font-size: 180%;
	border: 2px solid #fff;
	box-shadow: 0px 0px 10px #888;
	padding: 20px;
	border-radius: 20px;
	display: inline-block;
	width: 50%;
	text-decoration: none;
	color: #fff;
}
.reloclub-box .flyer-wrap{
	margin-bottom: 40px;
}
.reloclub-box .flyer-wrap .flyer-box{
	display: flex;
	text-align: center;
}
.reloclub-box .flyer-wrap .flyer-box div{
	padding: 1%;
	width: 50%;
	position: relative;
}
.reloclub-box .flyer-wrap .flyer-box div img{
	border: 1px solid;
	box-shadow: 0px 0px 10px #888;
}
.reloclub-box .flyer-wrap .flyer-box div a{
	outline: none;
}
.reloclub-box .flyer-wrap .flyer-msg{
	text-align: center;
}
.reloclub-box .flyer-wrap .flyer-msg p{
	font-size: 115%;
}

/*マイクーポン*/
.coupon-wrap{
	margin-top: 40px;
}
.coupon-list-box{
	margin-top: 40px;
}
.coupon-list-box .coupon-box{
	display: flex;
	background-color: #fff;
	margin-top: 20px;
	padding: 10px;
	cursor: pointer;
}
.coupon-list-box .coupon-box .img-box{
	width: 18%;
	position: relative;
	min-height: 170px;
	margin: 0 1%;
}
.coupon-list-box .coupon-box .img-box img{
	max-height: 90%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
}
.coupon-list-box .coupon-box .cts-box{
	width: 70%;
	position: relative;
	padding-bottom: 30px;
}
.coupon-list-box .coupon-box .deadline{
	position: absolute;
	bottom: 0;
	font-size: 85%;
}
.coupon-list-box .coupon-box .coupon-select{
	width: 10%;
	position: relative;
}
.coupon-list-box .coupon-box .coupon-select p{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	font-size: 160%;
}
.coupon-box .coupon-select p.open{
	display: block;
}
.coupon-box .coupon-select p.close{
	display: none;
}
.coupon-box.active .coupon-select p.open{
	display: none;
}
.coupon-box.active .coupon-select p.close{
	display: block;
}
.coupon-list-box .coupon-box .cts-box h3{
	font-size: 120%;
	margin-top: 5px;
	margin-bottom: 10px;
}
.coupon-list-box .coupon-box p{
	margin: 0;
}
.coupon-wrap .btn-box{
	text-align: center;
	margin-top: 80px;
}
.coupon-wrap .btn-box > div{
	display: inline-block;
	width: 35%;
	margin: 0 1%;
	position: relative;
}
.coupon-wrap .btn-box button.back{
	background-color: #8e8e8e;
}
.coupon-wrap .btn-box button{
	display: inline-block;
	color: #fff;
	border: 2px solid #fff;
	font-size: 180%;
	padding: 45px;
	width: 100%;
	border-radius: 20px;
	box-shadow: 0px 0px 10px #888;
	outline: none;
	cursor: pointer;
}
.coupon-wrap .btn-box div.select-num{
	position: absolute;
    right: -20px;
    top: -20px;
    background-color: #ff3300;
    height: 50px;
    width: 50px;
    font-size: 33px;
    border-radius: 50%;
    font-weight: bold;
    line-height: 55px;
    color: #fff;
    text-align: center;
}
.coupon-open-box{
	background-color: rgba(255,255,255,0.5);
	padding: 30px 4%;
	display: none;
}
.coupon-open-box > div{
	margin-bottom: 30px;
}
.coupon-open-box h3{
	margin: 0;
	border-left: 7px solid;
	padding: 3px 10px;
	font-size: 120%;
	margin-bottom: 5px;
}
.coupon-open-box div p{
	margin: 0;
	padding: 0 18px;
}
.coupon-open-box div table{
	border-collapse: collapse;
	text-align: center;
	margin: 10px 0;
	margin-left: 18px;
}
.coupon-open-box div table th{
	color: #fff;
	font-weight: normal;
	padding: 10px;
	border: 2px solid #ddd;
}
.coupon-open-box div table td {
	padding: 10px 15px;
	border: 2px solid #ddd;
	vertical-align: top;
	line-height: 1.8;
	vertical-align: middle;
	background-color: #fff;
}
.coupon-open-box div .small{
	font-size: 85%;
}
.coupon-open-box div p a{
	color: red;
	text-decoration: none;
}
.coupon-open-box .btn-group{
	text-align: center;
	margin-top: 50px;
	margin-bottom: 10px;
}
.coupon-open-box .btn-group label{
	background: none;
}
.coupon-open-box .btn-group label input[type="checkbox"]{
	display: none;
}
.coupon-open-box .btn-group label span, .coupon-open-box .btn-group a.btn{
	font-size: 120%;
	border: 2px solid #fff;
	box-shadow: 0px 0px 10px #888;
	padding: 20px 0;
	border-radius: 20px;
	display: inline-block;
	width: 300px;
	text-decoration: none;
	color: #fff;
	outline: none;
	margin: 0 2%;
	cursor: pointer;
}
.coupon-open-box .btn-group label span.off{
	display: none;
}
.coupon-open-box .btn-group input[type="checkbox"]:checked ~ .off{
	display: inline-block;
	background-color: #8e8e8e;
}
.coupon-open-box .btn-group input[type="checkbox"]:checked ~ .on{
	display: none;
}
.modal_box{
	position: fixed;
	z-index: 7777;
	display: none;
	max-width: 550px;
	width: auto;
	min-width: 350px;
	margin: 0;
	text-align: center;
	overflow-y: scroll;
	max-height: 70vh;
	border: 10px solid #fd6c9b;
    background-color: #fd6c9b;
    -webkit-animation: AnimationName 1s ease infinite alternate;
    -moz-animation: AnimationName 1s ease infinite alternate;
    animation: AnimationName 1s ease infinite alternate;
}

#line-coop-modal h1{
	margin-bottom: 30px;
}

#line-coop-modal .btn-wrap .main-btn{
	min-width: 250px;
}

#line-coop-modal .description{
	text-align: left;
}

@-webkit-keyframes AnimationName {
    0%{
    	border: 12px solid #e84566;
    	background-color: #e84566;
    }
    100%{
    	border: 12px solid #efacb9;
    	background-color: #efacb9;
    }
}
@-moz-keyframes AnimationName {
    0%{
    	border: 12px solid #e84566;
    	background-color: #e84566;
    }
    100%{
    	border: 12px solid #efacb9;
    	background-color: #efacb9;
    }
}
@keyframes AnimationName {
    0%{
    	border: 12px solid #e84566;
    	background-color: #e84566;
    }
    100%{
    	border: 12px solid #efacb9;
    	background-color: #efacb9;
    }
}
.coupon-open-box .modal_box > div{
	padding: 30px 20px;
	background-color: #fff;
}
.coupon-open-box .modal_box img{
	vertical-align: bottom;
	background-color: #fff;
}
.coupon-open-box .modal_box h4{
	margin-bottom: 0;
	margin-top: 10px;
}
.coupon-open-box .modal_box p{
	padding: 0;
}
.modal_box .qr-box{
	position: relative;
	padding-bottom: 5px;
	margin-bottom: 10px;
}
.modal_box .qr-box img{
	max-width: 200px;
	width: 200px;
}
.modal_box .qr-box p{
	position: absolute;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	bottom: 0;
}
.modal_bg{
	position: fixed;
	top: 0;
	left: 0;
	z-index: 6666;
	display: none;
	width: 100%;
	height: 100%;
	background-color: rgba(255,255,255,0.6);
}
.coupon-open-box .link_area{
	margin-top: 30px;
}
.coupon-open-box .link_area a{
	border: 1px solid #fff;
	border-radius: 30px;
	color: #fff;
	padding: 8px;
	display: block;
	font-size: 85%;
}
.coupon-open-box .link_area div{
	width: 38%;
	display: inline-block;
	margin: 0 1%;
}
@keyframes anime{
	0%{transform:scale(.95); opacity:1}
	90%{opacity:.1}to{transform:scale(1.2,1.4); opacity:0}
}
.coupon-open-box .link_area .next{
	position: relative;
	transition: .2s;
}
.coupon-open-box .link_area .next:before,
.coupon-open-box .link_area .next:after{
	content: "";
	position: absolute;
	z-index: -10;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	border-radius: 32px;
	transform: translate3d(0,0,0);
}
.coupon-open-box .link_area .next:before{
	animation: anime 2s ease-out infinite;
}
.coupon-open-box .link_area .next:after{
	animation: anime 2s ease-out 1s infinite;
}
.coupon-open-box .link_area .back a{
	background-color: #8e8e8e;
}
.modal-list{
	padding: 15px;
	min-width: 400px;
}
.modal-list h3{
	color: #fff;
	margin: 0;
	margin-bottom: 10px;
	margin-top: 5px;
}
.modal-list .cts{
	background: #fff;
	padding: 15px;
	position: relative;
	border-radius: 10px;
	margin-bottom: 20px;
	display: none;
}
.modal-list > div h4{
	margin: 0;
	margin-bottom: 10px;
	margin-top: 5px;
}
.modal-list p{
	margin: 0;
	line-height: 1.8;
}
.modal-list .qr-box img{
	width: 150px;
}
.modal-list > div .close{
	position: absolute;
    right: -10px;
    top: -10px;
    width: 35px;
}
.modal-list .back{
	margin-top: 25px;
}
.modal-list .back a{
    border: 1px solid #fff;
    border-radius: 30px;
    color: #fff;
    padding: 8px;
    display: inline-block;
    font-size: 85%;
    background-color: #8e8e8e;
    width: 30%;
}
.modal-list .no-select{
	margin: 20px;
}
.modal-list .small{
	font-size: 80%;
}
.modal-list .qr-box{
	padding-bottom: 10px;
}
.modal_box .deadline{
	margin-top: 15px;
}
.approval{
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI","Noto Sans Japanese","ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;
	font-size: 80%;
}

/*知育本紹介*/
.education-lead{
	font-size: 110%;
	margin-top: -30px;
	margin-bottom: 30px;
	text-align: center;
}
.education-lead .ttl{
	font-size: 130%;
	font-weight: bold;
	margin-bottom: 5px;
}
.education-lead p{
	margin: 0;
}
.education-lead p br{
	display: none;
}
.book-list-wrap .book-box{
	display: flex;
	flex-wrap: wrap;
	background-color: #fff;
	border-radius: 50px;
	border: 5px solid;
	padding: 30px 5%;
	margin-top: 10px;
	margin-bottom: 50px;
	position: relative;
}
.book-list-wrap h2{
	font-size: 180%;
    border-left: 10px solid;
    padding-left: 10px;
    margin: 0;
    margin-bottom: 5px;
}
.book-list-wrap .book-box > div{
	width: 40%;
	margin: 3% 5%;
}
.book-list-wrap .book-box .masterpiece{
	width: auto;
	display: flex;
	margin-top: 0;
	align-items: center;
}
.book-list-wrap .book-box .masterpiece a{
	margin-right: 30px;
	margin-bottom: 0;
}
.book-list-wrap .book-box .book-lead-box{
	width: 100%;
	margin-bottom: 20px;
}
.book-list-wrap .book-box .book-lead-box .ttl{
	font-size: 130%;
	font-weight: bold;
	margin-bottom: 10px;
}
.book-list-wrap .book-box .book-lead-box p{
	font-size: 105%;
}
.book-list-wrap .book-box h3{
	margin: 0;
	font-size: 100%;
}
.book-list-wrap .book-box .small{
	font-size: 80%;
}
.book-list-wrap .book-box .catch{
	text-align: center;
	margin-bottom: 10px;
	font-size: 110%;
	font-weight: bold;
}
.book-list-wrap .book-box p{
	margin: 0;
	font-size: 100%;
}
.book-list-wrap .book-box a{
	display: block;
	text-align: center;
	margin-bottom: 20px;
}
.book-list-wrap .book-box a img{
	vertical-align: bottom;
	max-height: 350px;
}
.book-list-wrap .book-box.picture-book a img{
	max-height: 300px;
}
.book-list-wrap .book-box .details div{
	margin-bottom: 5px;
}
.education .book-box .img-box{
	position: absolute;
	right: 5%;
	bottom: 3%;
	text-align: right;
}
.education .book-box .img-box img{
	width: 80%;
}

.education .book-box img.border{
	border: 1px solid #ccc;
}

/*キャンペーン（はずれ）*/
.campaign-miss{
	text-align: center;
}
.campaign-miss .top-box{
	margin-top: 80px;
	margin-bottom: 40px;
}
.campaign-miss .top-box h3{
	margin: 0;
	margin-bottom: 5px;
	font-size: 180%;
}
.campaign-miss .btm-box{
	margin-bottom: 80px;
}
.campaign-miss p{
	text-align: center;
	margin: 0;
	line-height: 1.8;
}
.campaign-miss button{
	margin: auto;
    display: inline-block;
    background-color: #8e8e8e;
    color: #fff;
    border: 2px solid #fff;
    font-size: 180%;
    padding: 20px;
    width: 25%;
    border-radius: 20px;
    box-shadow: 0px 0px 10px #888;
    outline: none;
}

.top-l .news-inner article div a{
	color: #333;
}
.main-left-btn{
	position: absolute;
	top: 8%;
	left: -5px;
}
.campaign-btn{
    width: 270px;
	margin-bottom: 5px;
}
.instagram-banner {
	width: 260px;
}
.c-modal {
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 100;
}
.c-modal_bg {
    background: rgba(0, 0, 0, 0.4);
    height: 100vh;
    width: 100%;
}
.c-modal_content {
    position: absolute;
    top: 54%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    max-width: 800px;
    border: 10px solid #fca01e;
}
.c-modal_content_inner{
    background-color: #fff;
    position: relative;
}
.c-modal_content_inner .warn-msg{
    color: red;
    font-weight: bold;
    font-size: 15px;
    margin-top: 10px;
    text-align: center;
}
.c-modal_content_inner h2{
	position: absolute;
	left: 0;
    right: 0;
    margin: auto;
    top: -105px;
    width: 380px;
}

.modal {
	display: none;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 1000;
	min-width: 300px;
}

.modal__bg {
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
}

.modal__inner {
	background: #fff;
	top: 50%;
	left: 50%;
	padding: 40px 20px;
	position: absolute;
	transform: translate(-50%, -50%);
	min-width: 300px;
	width: 90%;
	max-width: 600px;
	text-align: center;
	box-sizing: border-box;
	z-index: 1000;
    border-radius: 30px;
}

.modal__inner .detail {
	text-align: left;
	margin-bottom: 10%;
}

.modal__inner .detail p{
	margin: 0;
}
.modal__inner .detail .explanation-member-ID{
	margin-bottom: 30px;
}

.modal__inner .help-btn-wrap {
	margin: 0px;
}

.modal__inner .help-btn-wrap .regist-btn {
	text-align: center;
	margin-bottom: 20px;
}
.modal__inner .help-btn-wrap .regist-btn a{
	font-size: 200%;
	border: 2px solid #fff;
	box-shadow: 0px 0px 10px #888;
	padding: 10px;
	border-radius: 15px;
	display: inline-block;
	width: 80%;
}
.modal__inner .help-btn-wrap .regist-btn .help-to-login{
	font-size: 15px;
}
.modal__inner .close{
	display: inline-block;
	color: #fff;
	border: 2px solid #fff;
	font-size: 15px;
	padding: 10px;
	width: 45%;
	border-radius: 15px;
	box-shadow: 0px 0px 10px #888;
	outline: none;
	cursor: pointer;
    background-color: #8e8e8e;

}

.modal-inner{
	overflow-y: scroll;
    max-height: 70vh;
    padding: 40px 50px;
}
.modal-inner .campaign-link{
	font-weight: bold;
	font-size: 1.5rem;
	text-align: center;
}
.modal-inner .img-box{
	margin: auto;
	margin-bottom: 20px;
	margin-top: 10px;
	text-align: center;
	max-width: 500px;
	width: 100%;
}
.modal-inner .table-box{
	position: relative;
}
.modal-inner table{
	border-collapse: collapse;
	background-color: #fff;
	width: 100%;
	white-space: nowrap;
}
.modal-inner .result-cover{
	border: 10px solid gray;
	box-sizing: border-box;
	font-size: 2em;
	font-weight: bold;
	text-align: center;
	background-color: rgba(255, 255, 255, 0.7);
	position: absolute;
}
.modal-inner .result-cover p{
	color: gray;
	padding-top: 10%;
}
.modal-inner table th{
	background-color: #fca01e;
	color: #fff;
	padding: 20px;
	border: 2px solid #ddd;
	font-size: 120%;
    font-weight: normal;
}
.modal-inner table td{
	padding: 10px 20px;
	border: 2px solid #ddd;
	text-align: center;
	font-size: 130%;
	font-weight: bold;
}
.modal-inner table td.num{
	width: 25%;
}
.modal-inner table td.icon{
	padding: 5px;
	width: 40%;
}
.modal-inner table td img{
	min-width: 50px;
	max-width: 100px;
	width: 100%;
	height: auto;
	vertical-align: middle;
}
.modal-inner table td.chance img{
	max-width: 350px;
}
.modal-inner .btn-box{
	text-align: center;
	margin-top: 30px;
}
.modal-inner .btn-box a{
    border-radius: 30px;
    color: #fff;
    padding: 10px;
    display: inline-block;
    font-size: 120%;
    background-color: #8e8e8e;
    text-decoration: none;
    width: 150px;
}
.modal-inner table .result-width{
    width: 50%;
}

/*シーズンキャンペーン*/
.season-campaign-box-wrap{
	background-color: #fff;
	border: 5px solid;
	box-shadow: 0px 0px 10px #888;
	position: relative;
	padding: 70px 40px;
	margin-top: 130px;
}
.season-campaign-box-wrap > img{
	position: absolute;
	right: 0;
	left: 0;
	margin: auto;
	top: -80px;
	width: 500px;
}
.season.campaign .campaign-box{
	font-family: 源柔ゴシック;
}
.season.campaign .ttl-img{
	width: 90%;
}
.season.campaign .period{
	margin-top: 30px;
}
.season.campaign .period p{
	margin: 0;
	color: #555;
	font-weight: bold;
	line-height: 1.4;
	font-size: 26px;
	letter-spacing: 1px;
}
.season.campaign .btn-wrap{
	margin-top: 20px;
}
.season.campaign .btn-wrap .btn{
	text-decoration: none;
	border: none;
    cursor: pointer;
    outline: none;
    color: #fff;
    display: inline-block;
    padding: 20px;
    width: 350px;
    font-size: 34px;
    line-height: 1;
    background: #00ccff;
}
.season.campaign .present-area{
	margin-top: 60px;
}
.season.campaign .present-area > div{
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 20px;
	padding: 20px 10px;
	margin-bottom: 50px;
}
.season.campaign .present-area .img-box{
	width: 25%;
	display: flex;
	align-items: center;
	justify-content: center;
	-webkit-flex-shrink: 0;
    flex-shrink: 0;
    padding: 0 20px;
}
.season.campaign .present-area .img-box img{
	max-height: 160px;
	max-width: 90%;
}
.season.campaign .present-area .details{
	text-align: left;
	color: #555;
	width: 63%;
	padding: 0 10px;
	letter-spacing: 2px;
}
.season.campaign .present-area .details h3{
	margin: 0;
	font-size: 30px;
	margin-bottom: 5px;
}
.season.campaign .present-area .details p{
	margin: 0;
	font-size: 22px;
}
.season.campaign .present-area .details .text{
	padding-left: 10px;
	line-height: 1.4;
}
.season.campaign .present-area .item-num{
	width: 12%;
	display: flex;
	align-items: center;
	-webkit-flex-shrink: 0;
    flex-shrink: 0;
}
.season.campaign .present-area .item-num img{
	width: 100%;
}
.season.campaign .details-link a{
	color: #fff;
	display: inline-block;
	text-decoration: none;
	padding: 20px;
	width: 350px;
	font-size: 34px;
	line-height: 1;
}
.season.campaign .present-area .details .supplement{
	text-align: left;
	margin-top: 5%;
}
.season.campaign .present-area .details .supplement p{
	font-size: 70%;
}
/* お友達紹介ページ */
.friend.campaign .lead{
	margin-top: 20px;
}
.friend.campaign .lead img{
	width: 85%;
}
.friend.campaign .period{
	margin-top: 10px;
}
.friend.campaign .period img{
	width: 45%;
}
.friend.campaign .item-details{
	display: inline-flex;
	justify-content: center;
	margin-top: 10px;
	margin-bottom: 10px;
}
.friend.campaign .item-details .img-box{
	text-align: left;
}
.friend.campaign .item-details .img-box img{
	width: 75%;
}
.friend.campaign .item-details .details-box{
	width: 55%;
}
.friend.campaign .btn-wrap{
	margin-top: 10px;
}
.friend.campaign .btn-wrap .btn{
	text-decoration: none;
	border: none;
    cursor: pointer;
    outline: none;
    color: #fff;
    display: inline-block;
    padding: 20px 60px;
    font-size: 32px;
    line-height: 1;
    background: #f15a71;
}
.friend.campaign .app-method{
	width: 80%;
	display: inline-block;
	margin-top: 20px;
}
.friend.campaign .app-method h3{
	font-size: 34px;
    font-family: 源柔ゴシック;
    color: #23ABE3;
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}
.friend.campaign .app-method h3:before,
.friend.campaign .app-method h3:after {
	border-top: 2px solid #A9A9A9;
	content: "";
	flex-grow: 1;
}
.friend.campaign .app-method h3:before {
	margin-right: 2rem;
}
.friend.campaign .app-method h3:after {
	margin-left: 2rem;
}
.friend.campaign .step-box{
	font-family: ヒラギノ;
	display: inline-block;
	text-align: left;
}
.friend.campaign .step-box p{
	margin: 0;
	font-size: 23px;
}
.friend.campaign .step-box p span{
	color: #23ABE3;
	font-family: Meiryo,"meiryo";
	font-weight: bold;
	margin-right: 10px;
	font-size: 21px;
}
.friend.campaign .step-box .notes{
	margin-top: 60px;
}
.friend.campaign .step-box .notes p{
	font-size: 16px;
    font-family: 源柔ゴシック;
    letter-spacing: -1px;
    line-height: 1.7;
}

/* サンリオピューロランド */
.puroland-box-wrap{
	background-color: #fff;
	border: 5px solid;
	box-shadow: 0px 0px 10px #888;
	position: relative;
	padding: 90px 40px;
	margin-top: 130px;
}
.puroland-box-wrap > img{
	position: absolute;
	right: 0;
	left: 0;
	margin: auto;
	top: -135px;
	width: 500px;
}
.puroland-box .ttl-wrap{
	text-align: center;
}
.puroland-box .ttl-wrap h2{
	font-size: 180%;
    border-bottom: 5px solid;
    display: inline-block;
	margin: 0;
}
.puroland-box .logo-area{
	text-align: center;
	margin-top: 40px;
}
.puroland-box .lead{
	font-size: 130%;
	font-weight: bold;
}
.puroland-box .puroland-img{
	text-align: center;
	margin-top: 40px;
}
.puroland-box .puroland-img img{
	width: 80%;
}
.puroland-box .puroland-img a{
	color: #8CC2F0;
}
.puroland-box .puroland-img p{
	font-size: 130%;
	margin-top: 10px;
	font-weight: bold;
}
.puroland-box .plan-box .plan-ttl{
	text-align: center;
	background-color: #8ac4ee;
	color: #fff;
	padding: 20px;
	margin-top: 60px;
}
.puroland-box .plan-box .plan-ttl h3{
	margin: 0;
	font-size: 2em;
	line-height: 1.4;
	margin-bottom: 20px;
}
.puroland-box .plan-box .plan-ttl p{
	margin: 0;
}
.puroland-box .plan-step-wrap{
	margin-top: 60px;
	text-align: center;
}
.puroland-box .plan-step-wrap .step-box{
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.puroland-box .plan-step-wrap .step-box .img-area{
	position: relative;
}
.puroland-box .plan-step-wrap .step-box .balloon-wrap{
	display: flex;
	align-items: center;
	margin-left: -3%;
}
.puroland-box .plan-step-wrap .show .balloon-wrap{
	margin-bottom: 60px;
}
.puroland-box .plan-step-wrap .show .balloon-wrap .note{
	color: #ffba15;
	text-align: left;
	margin: 0;
	margin-left: 40px;
	font-weight: bold;
	font-size: 90%;
	margin-bottom: 50px;
}
.puroland-box .plan-step-wrap .attraction2 .balloon-wrap{
	margin-bottom: 60px;
}
.puroland-box .plan-step-wrap .sweets .balloon-wrap{
	margin-top: 100px;
}
.puroland-box .plan-step-wrap .balloon1{
	position: relative;
    display: inline-block;
}
.puroland-box .plan-step-wrap .info .balloon1,
.puroland-box .plan-step-wrap .attraction2 .balloon1{
	z-index: 1;
}
.puroland-box .plan-step-wrap .show .balloon1{
	z-index: 2;
    margin-bottom: 40px;
	margin-left: -10px;
}
.puroland-box .plan-step-wrap .shopping .balloon1{
	margin-bottom: 60px;
}
.puroland-box .plan-step-wrap .balloon1 span{
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	width: 70%;
    font-weight: bold;
	font-size: 105%;
}
.puroland-box .plan-step-wrap .info .balloon1 span{
	color: #f68ca2;
}
.puroland-box .plan-step-wrap .attraction .balloon1 span{
	color: #fff;
	width: 74%;
}
.puroland-box .plan-step-wrap .attraction .balloon1 span a{
	color: #fff;
}
.puroland-box .plan-step-wrap .attraction2 .balloon1 span{
	color: #8ac4ee;
	width: 80%;
	top: 51%;
}
.puroland-box .plan-step-wrap .attraction2 .balloon1 span a{
	color: #8ac4ee;
}
.puroland-box .plan-step-wrap .lunch .balloon1 span{
	color: #fff;
	width: 74%;
}
.puroland-box .plan-step-wrap .lunch .balloon1 span a{
	color: #fff;
}
.puroland-box .plan-step-wrap .show .balloon1 span{
	color: #ffba15;
	width: 74%;
}
.puroland-box .plan-step-wrap .show .balloon1 span a{
	color: #ffba15;
}
.puroland-box .plan-step-wrap .sweets .balloon1 span,
.puroland-box .plan-step-wrap .sweets .balloon1 span a{
	color: #fff;
}
.puroland-box .plan-step-wrap .shopping .balloon1 span{
	color: #fff;
}
.puroland-box .plan-step-wrap .shopping .balloon1 span a{
	color: #fff;
}
.puroland-box .plan-step-wrap .balloon2{
	position: relative;
    display: inline-block;
	margin-left: -35px;
}
.puroland-box .plan-step-wrap .info .balloon2{
	margin-top: 40px;
}
.puroland-box .plan-step-wrap .attraction .balloon2{
	margin-top: 50px;
}
.puroland-box .plan-step-wrap .attraction2 .balloon2{
	margin-bottom: 60px;
}
.puroland-box .plan-step-wrap .sweets .balloon2{
	position: absolute;
    width: 180px;
    right: 0;
    font-size: 90%;
}
.puroland-box .plan-step-wrap .balloon2 span{
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	width: 72%;
    font-weight: bold;
	font-size: 90%;
}
.puroland-box .plan-step-wrap .info .balloon2 span,
.puroland-box .plan-step-wrap .info .balloon2 span a{
	color: #fff;
}
.puroland-box .plan-step-wrap .attraction .balloon2 span{
	color: #74cac7;
}
.puroland-box .plan-step-wrap .attraction2 .balloon2 span{
	color: #fff;
}
.puroland-box .plan-step-wrap .lunch .balloon2 span{
	color: #c6aa8b;
	width: 66%;
}
.puroland-box .plan-step-wrap .lunch .balloon2 span a{
	color: #c6aa8b;
}
.puroland-box .plan-step-wrap .show .balloon2 span{
	color: #fff;
}
.puroland-box .plan-step-wrap .sweets .balloon2 span{
	width: 74%;
	font-size: 90%;
	color: #8ac4ee;
}
.puroland-box .plan-step-wrap .show .balloon3{
	margin-left: -50px;
    margin-bottom: -50px;
    position: relative;
    z-index: 1;
}
.puroland-box .plan-step-wrap .show .balloon3 img{
	width: 210px;
}
.puroland-box .plan-step-wrap .sweets .balloon3{
	margin-left: -20px;
	margin-bottom: 100px;
	position: relative;
}
.puroland-box .plan-step-wrap .sweets .balloon3 img{
	width: 220px;
}
.puroland-box .plan-step-wrap .point-area{
	position: absolute;
	right: 0;
	bottom: -40px;
	width: 49%;
	text-align: left;
}
.puroland-box .plan-step-wrap .attraction2 .point-area{
	bottom: 10px;
}
.puroland-box .plan-step-wrap .lunch .point-area{
	bottom: 0;
}
.puroland-box .plan-step-wrap .show .point-area{
	bottom: -30px;
}
.puroland-box .plan-step-wrap .shopping .point-area{
	bottom: 0;
}
.puroland-box .plan-step-wrap .point-area .point-box{
	border: 3px solid #f68ca2;
	border-radius: 7px;
	color: #f68ca2;
	font-weight: bold;
	position: relative;
	padding: 15px;
}
.puroland-box .plan-step-wrap .point-area .point-box .point{
	display: inline-block;
	background-color: #f68ca2;
	color: #fff;
	width: 100px;
	text-align: center;
	font-size: 120%;
	position: absolute;
	bottom: 95%;
	left: 10px;
	padding-top: 3px;
}
.puroland-box .plan-step-wrap .point-area .point-box p{
	margin: 0;
}
.puroland-box .plan-step-wrap .point-area .point-box p span{
	display: block;
}
.puroland-box .plan-step-wrap .point-area .point-box a{
	color: #f68ca2;
}
.puroland-box .course1{
	margin-top: 60px;
    margin-bottom: -60px;
}
.puroland-box .course2{
	margin-bottom: 20px;
}
.puroland-box .course3{
	margin-bottom: -20px;
}
.puroland-box .course4{
	margin-top: 40px;
}
.puroland-box .course5{
	margin-top: 70px;
}
.puroland-box .course6{
	margin-top: 30px;
	margin-bottom: -40px;
}
.puroland-box .course-wrap img{
	width: 350px;
}
.puroland-box .directions{
	margin-top: 20px;
	margin-bottom: 50px;
}
.puroland-box .directions p{
	margin: 0;
}
.puroland-box .directions p a{
	color: #f68ca2;
}
.puroland-box .directions .directions-inner{
	display: inline-block;
	text-align: left;
	border: 3px solid #f68ca2;
	border-radius: 7px;
    color: #f68ca2;
	font-weight: bold;
	padding: 15px;
	width: 930px;
    max-width: 100%;
    box-sizing: border-box;
}
.puroland-box .note-area{
	text-align: center;
	margin-top: 80px;
	text-align: left;
    color: #f68ca2;
	font-weight: bold;
}
.puroland-box .note-area p{
	margin: 0;
	display: flex;
}
.puroland-box .address{
	background-color: #8ac4ee;
	color: #fff;
	padding: 20px;
	margin-top: 20px;
	font-weight: bold;
}
.puroland-box .address p{
	margin: 0;
}
/* サンリオピューロランドここまで */

/* LINE関連 */
.line-bg{
	background-color: #00B900 !important;
}

.bottom-fixed-line-area{
	position: fixed;
	bottom: 0;
	right: 0;
	left: 0;
	width: 100%;
	padding: 10px 0;
	font-size: 180%;
	background-color: #00B900 !important;
	text-align: center;
	font-weight: bold;
	color: #fff;
	text-decoration: none;
	z-index: 2;
}


.bottom-fixed-ajaust-area{
	height: 55px;
}


@media screen and (min-width: 581px) and (max-width: 1000px){
	body{
		font-size: 14px;
	}
	.member-page{
		padding-top: 20px;
	}
	.member-page form{
		margin-top: 20px;
	}
	header .container{
		width: 95%;
	}
	.head-title{
		line-height: 1.2;
	}
	.head-box img.site-logo {
		width: 170px;
	}
	header .member .btn a{
		width: 130px;
	}
	.top-l .news-inner{
		width: 90%;
	}
	#main-menu{
		margin-bottom: 50px;
	}
	.top-l .top-relo{
		margin-top: 80px;
	}
	.top-l .top-present{
		margin-top: 80px;
	}
	#main-menu-open .inner > div{
		border-width: 7px;
	}
	#main-menu-open .inner > div > div{
		padding: 5%;
	}
	#main-menu-open .inner > div > div a{
		font-size: 14px;
	}
	.main-menu-wrap{
		border-width: 7px;
	}
	.main-right-btn{
		width: 25%;
		top: 5%;
	}
	.present-box-wrap{
		margin-top: 80px;
		padding: 5%;
	}
	.present .btn-box div a{
		width: 70%;
	}
	.stamp .stamp-box-wrap{
		padding: 5%;
		padding-top: 60px;
		margin-top: 110px;
	}
	.stamp-card .objective input{
		margin: 5px 0;
		font-size: 190%;
		padding-right: 1px;
	}
	.stamp-card .objective{
		top: 7%;
	}
	.movie-box-wrap{
		padding: 5%;
		padding-top: 80px;
		margin-top: 90px;
	}
	.movie-box-wrap .movie-box{
		width: 100%;
		margin-bottom: 40px;
	}
	.app-box-wrap{
		padding: 5%;
		margin-top: 90px;
	}
	.app-list > div{
		width: 31%;
		margin: 1.1%;
	}
	.app-box h3{
		margin-top: 30px;
	}
	.calendar-box-wrap{
		padding: 5%;
		margin-top: 90px;
	}
	.calendar-list > div{
		width: 31%;
		margin: 1.1%;
	}
	.calendar-box h3{
		margin-top: 30px;
	}
	.recipe-list-wrap{
		margin-top: 0;
	}
	.recipe-list-box > a{
		width: 85%;
	}
	.recipe-list-box .past-link{
		margin-top: 20px;
	}
	.recipe-list-wrap .link-btn a{
		padding: 20px 0;
		margin: 5% 0;
	}
	.recipe-box .making .content table th span{
		height: 28px;
		padding-top: 7px;
	}
	.roulette-box-wrap{
		margin-top: 70px;
	}
	.roulette-img-wrap{
		text-align: center;
	}
	.roulette-recipe img{
		width: 70%;
	}
	.roulette-recipe.pink{
		top: 15%;
		right: 22%;
	}
	.roulette-recipe.orange{
		top: 29%;
		right: 21%;
	}
	.roulette .rc-button{
		margin-top: 40px;
	}
	.result{
		width: 80%;
		padding: 5%;
	}
	.comic .list-box .comic-box .cts-box a{
		width: 20%;
	}
	.journal-list-wrap{
		margin-top: 0;
	}
	.journal-list-box{
		padding-bottom: 10px;
		margin-bottom: 0;
	}
	.journal-list-box a{
		width: 85%;
		margin-bottom: 15px;
	}
	.journal-list-wrap .link-btn a{
		padding: 20px 0;
		margin: 10px 0;
	}
	.journal-box{
		padding: 5%;
	}
	.journal-box .date{
		margin-top: 15px;
	}
	.journal-box .img-box{
		margin-bottom: 15px;
	}
	.online-box .cts-box > div{
		margin-left: 20px;
	}
	.online-box .cts-box ol{
		padding-left: 40px;
	}
	.online-box .cts-box .list{
		padding-left: 20px;
	}
	.column-list-wrap{
		margin-top: 0;
	}
	.column-list-box{
		padding-bottom: 10px;
	}
	.column-list-box > a{
		margin-bottom: 15px;
		width: 85%;
	}
	.the-mutual a{
		padding: 20px 0;
	}
	.the-mutual{
		margin: 10px 0;
	}
	.column-box{
		padding: 5%;
	}
	.event-box-wrap{
		padding: 5%;
	}
	.event-box-wrap h2{
		margin-bottom: 20px;
	}
	.event-box-wrap h3 img{
		height: 20px;
	}
	.event .event-inner{
		width: 100%;
	}
	.event .event-details table th:before{
		left: 99%;
	}
	.about-ttl{
		margin-bottom: 30px;
	}
	.about .lead ul{
		margin: 20px 0;
	}
	.benefits-box.member table td{
		padding: 5px;
	}
	.about .contact-box .default{
		margin-top: 40px;
	}
	.login_box{
		width: 100%;
		max-width: 500px;
	}
	.pass-reset-box{
		width: 100%;
	}
	.pass_reset h2 img{
		top: -140px;
	}
	.regist form table th{
		display: block;
		width: auto;
		padding: 20px;
	}
	.regist form table td{
		display: block;
		padding: 20px;
	}
	.regist form table .col2 > div{
		display: block;
	}
	.regist form table td input{
		padding: 10px;
	}
	.regist form table .col2 > div > p{
		margin: 0;
	}
	.regist form table .col2 > div{
		width: 48%;
		margin: 0 1%;
	}
	.regist form table .col2 > div input{
		width: 90%;
	}
	.mypage-menu a{
		font-size: 140%;
	}
	.mypage-menu > div{
		width: 46%;
		margin: 2%;
	}
	.contact-box{
		margin-top: 50px;
	}
	.error-default{
		margin-top: 50px;
	}
	.regist form input[type=submit]{
		width: 40%;
		padding: 20px;
		margin-top: 30px;
	}
	.regist form .btn-box .btn{
		width: 40%;
		padding: 20px 0;
	}
	.regist .btn-box{
		margin-top: 30px;
	}
	.regist-box.cmp .btn-box button{
		width: 40%;
    	padding: 20px 0;
	}
	.mail-config-box{
		margin-top: 20px;
	}
	.mail-config-box.cmp .btn-box{
		margin-top: 30px;
	}
	.mail-config-box.cmp .back{
		width: 40%;
		padding: 20px 0;
	}
	.confirm-box{
		margin-top: 30px;
	}
	.confirm-box table th{
		padding: 10px;
		width: 35%;
	}
	.confirm-box table td{
		padding: 10px;
	}
	.regist-confirm .btn-box input,
	.regist-confirm .btn-box .btn{
		width: 40%;
		padding: 20px 0;
	}
	.regist-confirm .btn-box{
		margin-top: 40px;
	}
	.regist-cmp .btn-box a{
		width: 40%;
		padding: 20px 0;
	}
	.regist-cmp .btn-box{
		margin-top: 40px;
	}
	.regist-cmp .lead{
		margin-top: 20px;
	}
	.mail-config form .btn-box{
		margin-top: 50px;
	}
	.mail-config form .btn-box input,
	.mail-config form .btn-box a {
		width: 40%;
    	padding: 20px 0;
	}
	.login-edit-box{
		margin-top: 20px;
	}
	.login-edit .btn-box{
		margin-top: 40px;
	}
	.login-edit .btn-box .btn{
		width: 40%;
		padding: 20px 0;
	}
	.login-edit-box.cmp .btn-box .back{
		width: 40%;
    	padding: 20px 0;
	}
	.withdraw-box{
		margin-top: 20px;
	}
	.withdraw form .btn-box{
		margin-top: 50px;
	}
	.withdraw form .btn-box .btn {
		width: 40%;
		padding: 20px;
	}
	.withdraw-box.cmp .btn-box{
		margin-top: 30px;
	}
	.withdraw-box.cmp .btn {
		width: 40%;
		padding: 20px 0;
	}
	.regist form .label{
		min-height: 30px;
	}
	.contact .input-box table th{
		display: block;
		width: auto;
		padding: 20px;
	}
	.contact .input-box table td{
		display: block;
		padding: 20px;
	}
	.contact .confirm .input-box table th{
		padding: 20px;
	}
	.contact .confirm .input-box table td{
		padding: 20px;
	}
	.contact .confirm .input-box table .tp50{
		padding-top: 20px;
	}
	.contact .confirm .input-box table .btm50{
		padding-bottom: 20px;
	}
	.contact form input[type=submit]{
		width: 40%;
		padding: 20px 0;
	}
	.contact .btn-box{
		margin-top: 40px;
	}
	.contact-cmp .label{
		margin-top: 30px;
	}
	.contact-cmp .btn-box a{
		width: 40%;
		padding: 20px 0;
	}
	.contact-cmp .btn-box{
		margin-top: 40px;
	}
	.regist-box{
		margin-top: 20px;
	}
	.regist form table .col2 > div:first-child{
		margin-right: 1%;
	}
	.regist form table select{
		height: 50px;
	}
	.select-box::before{
		top: 20px;
	}
	.recipe-box .food-main-box .food-list div{
		width: 100%;
	}
	.recipe-box .food-main-box .food-list{
		margin-top: 10px;
	}
	.recipe-box .food-main-box h4{
		margin-top: 15px;
	}
	.recipe-box .food-main-box .food-list div{
		margin-top: 10px;
	}
	.recipe-box .material{
		margin-top: 20px;
		margin-bottom: 10px;
	}
	.recipe-box .making .content{
		margin: 10px 0;
	}
	.recipe-box .advice > div{
		margin-top: 10px;
	}
	.recipe-box .food-box{
		margin-top: 15px;
		padding: 15px;
	}
	.leisure-list-wrap{
		margin-top: 0;
	}
	.leisure-list-box{
		border-radius: 20px;
		padding-top: 0;
		margin-bottom: 0;
	}
	.leisure-list-box > img{
		position: static;
		margin-bottom: -5%;
		margin-top: -5%;
	}
	.leisure-list-box > a{
		width: 85%;
		margin-bottom: 15px;
	}
	.leisure-box{
		padding: 5%;
	}
	.leisure-box h2 .sp-only{
		display: block;
	}
	.leisure-box .lead-box{
		margin: 15px 0;
		text-align: left;
	}
	.leisure-box .leisure-cts{
		margin-top: 15px;
		padding: 15px;
	}
	.leisure-box .leisure-cts .date{
		margin-top: 20px;
	}
	.leisure-box h3{
		margin-bottom: 5px;
	}
	.application .lead{
		margin: 20px;
	}
	.application .btn-box{
		margin-top: 40px;
	}
	.application .btn-box a,
	.application button{
		width: 40%;
		padding: 20px 0;
	}
	.regist .post-btn{
		height: 50px;
	}
	.regist form input[type=date]{
		height: 28px;
	}
	.benefits-box.member .col2 > div{
		width: 48%;
	}
	.benefits-box.member .col2 > div:first-child{
		margin-right: 4%;
	}
	.benefits-box.member .other p{
		font-size: 100%;
	}
	.sanrio-shop-details .details-box > div{
		margin-left: 20px;
	}
	.sanrio-puroland .lead br.pc-only{
		display: none;
	}
	.sanrio-puroland-details .details-box > div{
		margin-left: 20px;
	}
	.line24-box .lead p{
		margin-top: 20px;
	}
	.line-details .details-box .details,
	.line24-box .btm-text{
		margin-left: 20px;
	}
	.stamp-box-wrap .intro{
		margin: 0;
	}
	.campaign-box-wrap{
		margin-top: 80px;
		padding: 5%;
		padding-top: 9%;
	}
	.campaign-box .img-box{
		width: 90%;
		margin-top: 30px;
	}
	.campaign-box .campaign-ttl{
		padding: 30px;
    	position: relative;
    	width: auto;
    	width: 85%;
    	padding-bottom: 20px;
    	margin-bottom: 15px;
	}
	.campaign-box .campaign-ttl .member_only{
		width: 20%;
	}
	.campaign-box .campaign-ttl .kitty {
    	width: 15%;
    	right: 10px;
    	top: 50%;
    	transform: translateY(-50%);
    	-webkit-transform: translateY(-50%);
    	-ms-transform: translateY(-50%);
	}
	.campaign-box .campaign-ttl h3 br{
		display: block;
	}
	.campaign-box .campaign-ttl h2{
		font-size: 180%;
	}
	.campaign-details-top .campaign-num{
		left: -18%;
	}
	.campaign-details-btm{
		padding: 20px 30px;
	}
	.reloclub-box-wrap{
		margin-top: 80px;
		padding: 3%;
		padding-top: 10%;
		padding-bottom: 50px;
	}
	.reloclub-box .btn-wrap{
		margin-top: 50px;
	}
	.reloclub-box .btn-wrap a{
		min-width: 70%;
		width: auto;
	}
	.top-relo .reloclub-box .btn-wrap a{
		min-width: auto;
		width: 300px;
	}
	.top-relo .reloclub-box .lead{
		width: 95%;
		margin: auto;
	}
	.top-relo .reloclub-box .details-wrap > div{
		margin-bottom: 10px;
	}
	.top-relo .reloclub-box .campaign-box{
		margin-top: 10px;
	}
	.top-relo .reloclub-box .btn-wrap{
		margin-top: 20px;
	}
	.event-inner .search-box h4{
		padding: 5px 10px;
	}
	.event-inner .search-box table{
		width: 100%;
		margin: 10px 0;
	}
	.event-inner .search-box table th{
		min-width: 80px;
		padding-left: 5px;
	}
	.event-inner .search-box table td.width30{
		width: 25%;
	}
	.event-inner .search-box .select-box{
		max-width: 150px;
	}
	.event-inner .search-box .col2 .select-box{
		width: 42%;
	}
	.event-inner .event-list-box{
		margin-top: 30px;
	}
	.event-inner .event-list-box table td:nth-child(5){
		max-width: 250px;
	}
	.event-inner .event-list-box table th{
		padding: 10px;
	}
	.event-inner .event-list-box table td{
		padding: 10px 5px;
	}
	.coupon-wrap{
		margin-top: 20px;
	}
	.coupon-list-box{
		margin-top: 20px;
	}
	.coupon-list-box .coupon-box .img-box{
		min-height: 140px;
		width: 22%;
		margin: 0 1.5%;
	}
	.coupon-list-box .coupon-box .cts-box{
		width: 65%;
	}
	.coupon-open-box{
		padding: 20px 4%;
	}
	.coupon-open-box > div{
		margin-bottom: 20px;
	}
	.coupon-open-box .btn-wrap{
		margin-top: 30px;
	}
	.coupon-wrap .btn-box{
		margin-top: 40px;
	}
	.coupon-wrap .btn-box button{
		padding: 20px 0;
	}
	.coupon-open-box .modal_box > div{
		font-size: 140%;
	}
	.online-journal .tag{
		margin-top: 30px;
	}
	.tag ul li a{
		height: 28px;
		line-height: 28px;
		font-size: 12px;
	}
	.tag ul li a::before{
		left: -14px;
		border-width: 14px 14px 14px 0;
	}
	.reloclub-box .campaign-box{
		margin-top: 0;
	}
	.reloclub-box .btn-wrap{
		margin-top: 30px;
	}
	.coupon-open-box .btn-group label span, .coupon-open-box .btn-group a.btn{
		width: 40%;
		margin: 0;
	}
	.coupon-wrap .btn-box > div{
		width: 40%;
	}
	.stamp .clear-box{
		margin: 15px 0;
	}
	.stamp .clear-box{
		padding: 30px 10px;
	}
	.stamp .clear-box h3{
		margin-bottom: 15px;
	}
	.stamp .clear-box .btn-box{
		margin-top: 25px;
	}
	.stamp .rc-button{
		margin-top: 45px;
	}
	.stamp .clear-box .text-box{
		width: 35%;
	}
	.recipe-list-box .past-list .past-box{
		width: 100%;
	}
	.recipe-list-box .past-list .past-box div{
		width: 100%;
		margin-bottom: 10px;
	}
	.recipe-list-box .past-list .past-box a{
		margin-bottom: 5px;
		padding: 5px;
	}
	#main-menu.menu4{
		margin-bottom: 50px;
	}
	.campaign-details-top{
		margin-top: 30px;
	}
	.campaign-details-top h3{
		font-size: 120%;
		line-height: 1.4;
		margin-top: 15px;
	}
	.campaign-details-top h3 br{
		display: none;
	}
	.campaign-details-top .further{
		width: 50px;
		left: -15px;
		top: -15px;
	}
	.campaign-details-top .right-box .img-box{
		width: 70%;
		margin-top: 25px;
	}
	.campaign-details-top .right-box .note p br{
		display: none;
	}
	.campaign-details-top .left-box .img-box{
		width: 70%;
	}
	.campaign-details-btm .left-box .green{
		display: block;
	}
	.campaign-details-btm .left-box ul{
		margin-top: 10px;
	}
	.campaign-details-btm .left-box{
		margin-right: 3%;
	}
	.campaign-box .btn-box a{
		width: 70%;
	}
	.campaign-details-btm{
		margin-bottom: 30px;
	}
	.campaign-box .btn-box.lottery{
		margin-bottom: 30px;
	}
	.campaign-box .btn-box p br{
		display: block;
	}
	.book-list-wrap .book-box{
		padding: 20px;
	}
	.book-list-wrap .book-box .catch{
		font-size: 100%;
	}
	.book-list-wrap .book-box .masterpiece{
		align-items: start;
	}
	.book-list-wrap .book-box .masterpiece a{
		margin-right: 20px;
	}
	.book-list-wrap .book-box .book-lead-box .ttl{
		font-size: 120%;
		margin-bottom: 5px;
	}
	.book-list-wrap .book-box .book-lead-box p{
		font-size: 100%;
	}
	.book-list-wrap .book-box > div{
		width: 45%;
		margin: 1% 2.5%;
	}
	.book-list-wrap .book-box.picture-book a img{
		max-height: 200px;
	}
	.book-list-wrap .book-box a img{
		max-height: 300px;
	}
	.comic-list .comic-box .comic-lead{
		padding: 10px;
	}
	.comic-list .comic-box .comic-lead h3{
		margin-bottom: 5px;
	}
	.top-old-member{
		padding-top: 40px;
		margin-top: 90px;
	}
	.top-old-member .details{
		margin-bottom: 20px;
	}
	.top-old-member .link-box{
		text-align: left;
		padding: 20px;
	}
	.top-old-member .link-box > div{
		align-items: flex-end;
		margin-top: 10px;
	}
	.top-old-member .card-img img{
		max-width: 100%;
		width: 350px;
	}
	.top-l .top-relo{
		padding: 5%;
		padding-top: 50px;
	}
	.top-relo .reloclub-box .lead{
		margin-top: 10px;
		text-align: left;
	}
	.top-relo .reloclub-box .lead br{
		display: none;
	}
	.top-relo-details{
		display: block;
	}
	.top-relo-details > div{
		margin: 0;
		margin-top: 20px;
	}
	.top-relo-details div div{
		justify-content: center;
	}
	.top-relo-details div div img{
		max-height: 30px;
		margin: 0 3px;
	}
	.top-relo-details-wrap .note{
		text-align: left;
	}
	.top-online{
		margin-top: 90px;
	}
	.top-online-box .online-link-box div{
		display: block;
		margin-bottom: 20px;
		padding: 15px;
	}
	.top-online-box .online-link-box div img{
		height: 25px;
	}
	.top-online-box .online-link-box{
		padding: 20px;
	}
	.top-online-box .online-link-box .btn-box{
		margin-bottom: 0;
		margin-top: 20px;
	}
	.top-online-btm{
		margin-top: 20px;
	}
	.top-online-btm .link-box > div{
		width: 42%;
		margin: 0 2%;
	}
	.top-online-box .online-link-box .btn-box a{
		width: auto;
		display: block;
	}
	.top-online-btm .link-box > div a br{
		display: block;
	}
	.campaign-miss .btm-box{
		margin-bottom: 40px;
	}
	.campaign-miss button{
		width: 200px;
		padding: 15px;
	}
	.education-lead{
		margin-bottom: 20px;
		margin-top: -30px;
	}
	.education-lead p br{
		display: block;
	}
	.education .book-box .img-box{
		width: 100%;
		position: static;
	}
	.education .book-box .img-box img {
    	width: 30%;
	}
	.main-left-btn{
		top: 4.5%;
	}
	.campaign-btn{
		width: 25%;
	}
	.instagram-banner {
		width: 28%;
	}
	.modal-inner table{
		font-size: 90%;
	}

	/* シーズンキャンペーン */
	.season.campaign .ttl-img{
		width: 100%;
    	margin-top: 20px;
	}
	.season.campaign .period p{
		font-size: 18px;
	}
	.season.campaign .btn-wrap .btn{
		font-size: 28px;
		width: 300px;
		padding: 15px;
	}
	.season.campaign .present-area{
		margin-top: 40px;
	}
	.season.campaign .present-area > div{
		padding: 10px 5px;
		margin-bottom: 30px;
	}
	.season.campaign .present-area .img-box{
		width: 20%;
		padding: 0 10px;
		margin-top: 0;
	}
	.season.campaign .present-area .img-box img{
		max-width: 100%;
		max-height: 100px;
	}
	.season.campaign .present-area .details{
		padding: 0 10px;
	}
	.season.campaign .present-area .details p{
		font-size: 16px;
	}
	.season.campaign .present-area .details h3{
		font-size: 20px;
	}
	.season.campaign .present-area .details .text{
		padding-left: 0;
	}
	.season.campaign .details-link{
		padding: 10px 0;
	}
	.season.campaign .details-link a{
		font-size: 28px;
		width: 300px;
	}
	.friend.campaign .lead img{
		width: auto;
	}
	.friend.campaign .period img{
		width: 60%;
	}
	.friend.campaign .item-details{
		align-items: center;
	}
	.friend.campaign .item-details .img-box{
		width: auto;
		margin-top: 0;
		margin-right: 10px;
	}
	.friend.campaign .item-details .img-box img{
		width: 100%;
	}
	.friend.campaign .item-details .details-box{
		width: auto;
	}
	.friend.campaign .btn-wrap .btn{
		font-size: 26px;
		padding: 15px 50px;
	}
	.friend.campaign .app-method{
		width: auto;
	}
	.friend.campaign .app-method h3{
		font-size: 28px;
	}
	.friend.campaign .step-box p{
		display: flex;
		align-items: baseline;
		font-size: 17px;
	}
	.friend.campaign .step-box .notes{
		margin-top: 20px;
	}
	.friend.campaign .step-box .notes p{
		font-size: 14px;
	}
	.albus-box-wrap{
		padding: 5%;
		margin-top: 90px;
	}
}

@media screen and (max-width: 580px) {
	.main-left-btn{
		top: 3%;
		left: -3px;
	}
	.campaign-btn{
		width: 33%;
		margin-bottom: 0;
	}
	.instagram-banner{
		width: 33%;
	}
	.c-modal_content{
		border-width: 5px;
		width: 90%;
		max-width: 90%;
	}
	.c-modal_content_inner h2{
		width: 280px;
		top: -75px;
	}
	.c-modal_content_inner .warn-msg{
		font-size: 12px;
	}
	.modal-inner{
		padding: 20px 10px;
		max-height: 70vh;
	}
	.modal-inner .campaign-link{
		font-size: 1rem;
	}
	.modal-inner .img-box{
		margin: 10px 0;
	}
	.modal-inner .result-box{
		padding: 0 10px;
	}
	.modal-inner table{
		white-space: normal;
	}
	.modal-inner table th{
		padding: 15px;
		white-space: nowrap;
		font-size: 140%;
	}
	.modal-inner table td{
		padding: 10px;
		font-size: 120%;
	}
	.modal-inner table td.num{
		padding: 0;
	}
	.modal-inner table td img{
		max-width: 80%;
	}
	.modal-inner .btn-box{
		margin-top: 20px;
	}
	td.result-text {
		max-width: 50%;
	}
	.help-btn-wrap .regist-btn .help-to-login{
		width: 90%;
	}
}

/* ALBUS BOOK */
.albus{
	position: relative;
}
.albus-box-wrap{
	background-color: #fff;
	border: 5px solid;
	padding: 5%;
	box-shadow: 0px 0px 10px #888;
}
.albus-box-wrap h1 img{
	position: absolute;
	right: 0;
	left: 0;
	margin: auto;
	top: -120px;
	width: 500px;
}
.albus .title-label .label{
	border-left: 10px solid;
	padding: 5px 0;
	padding-left: 10px;
	font-size: 130%;
	margin: 0;
	margin-top: 30px;
	margin-bottom: 10px;
	position: relative;
}

.albus-coupon .lead .lead-line {
	display: flex;
}

.albus-coupon .notice .notice-box {
	margin-bottom: 12px;
}

.albus-coupon .notice .notice-line {
	display: flex;
	margin-bottom: 0;
}

.albus-coupon .notice .notice-title {
	margin-bottom: 0;
}

/* ALBUS BOOKここまで */

/*尾木ママ講演会*/
.online-event{
	text-align: center;
	color: #612c15;
}
.online-event .head-lead{
	font-weight: bold;
	margin-bottom: 30px;
}
.online-event .head-lead p{
	margin: 0;
}
.online-event .head-lead .large{
	font-size: 130%;
}
.online-event .head-lead .large span{
	font-size: 140%;
}
.online-event .ttl{
	margin-top: 20px;
}
.online-event .ttl h3{
	color: #612c15;
	font-size: 160%;
	padding: 0;
}
.online-event .ttl h3 span{
	display: block;
	font-size: 80%;
}
.online-event .teacher{
	display: inline-flex;
	margin-top: 30px;
	max-width: 740px;
}
.online-event .teacher .img-area{
	margin-right: 30px;
	-webkit-flex-shrink: 0;
	flex-shrink: 0;
}
.online-event .teacher .img-area img{
	vertical-align: bottom;
}
.online-event .teacher .details-area{
	text-align: left;
	background: #fff2ed;
	border-radius: 10px;
	padding: 20px;
}
.online-event .teacher .details-area h4{
	margin: 0;
	font-size: 130%;
	margin-bottom: 5px;
}
.online-event .teacher .details-area p{
	margin: 0;
}
.online-event .details table{
	display: inline-block;
	margin-top: 40px;
}
.online-event .details table th{
	padding: 10px 15px;
	vertical-align: top;
	padding-bottom: 20px;
}
.online-event .details table th div{
	background-color: #ff7373;
	color: #fff;
	border-radius: 20px;
	padding: 5px 15px;
	padding-bottom: 2px;
	font-size: 120%;
	white-space: nowrap;
}
.online-event .details table td{
	font-size: 130%;
	padding: 10px 20px;
	text-align: left;
	padding-bottom: 20px;
}
.online-event .details table td div > span{
	display: flex;
	font-size: 70%;
}
.online-event .details table td div .pink{
	color: #f9145f;
}
.online-event .deadline{
	color: #f42929;
	border: 2px solid;
	display: inline-block;
	font-size: 130%;
	padding: 5px 30px;
	margin-top: 10px;
}
.online-event .btn-area{
	margin-top: 60px;
	margin-bottom: 40px;
}
.online-event .btn-area a,.online-event p.disabled-link{
	background-color: #4264e1;
	color: #fff;
	text-decoration: none;
	font-size: 130%;
	padding: 10px 40px;
	border-radius: 15px;
	font-weight: bold;
	box-shadow: 1px 1px 2px #000;
	display: inline-block;
}
/*尾木ママ講演会ココまで*/

/*辻希美オンライントークショー*/
.event .container > h2{
	color: #fff;
    text-align: center;
    font-weight: normal;
    padding: 10px;
    width: 45%;
    margin: auto;
    border-radius: 10px;
    letter-spacing: 1px;
    margin-bottom: 50px;
    background-color: #f39939;
}
.online-event .head-lead > div{
	display: inline-block;
	position: relative;
}
.online-event .head-lead > div img{
	position: absolute;
    top: 50%;
    left: -160px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    width: 140px;
}
#tsuji-nozomi-event{
	margin-bottom: 50px;
}
#tsuji-nozomi-event .ttl{
	margin-top: 30px;
}
#tsuji-nozomi-event .teacher{
	max-width: 900px;
}
#tsuji-nozomi-event .btn-area{
	margin-top: 20px;
}
#tsuji-nozomi-event .btn-area a{
	background-color: #e9434e;
}
#tsuji-nozomi-event .btn-area p{
	background-color: #e9434e;
}
/*辻希美オンライントークショーここまで*/

@media screen and (min-width: 900px) and (max-width: 1000px){
	.recipe-list-box > img,
	.journal-list-box > img,
	.column-list-box > img{
		top: -66px;
	}
	.recipe-list-box{
		padding-top: 17%;
	}
	.journal-list-box,
	.column-list-box{
		padding-top: 18%;
	}
}

@media screen and (min-width: 800px) and (max-width: 899px){
	.recipe-list-box > img,
	.journal-list-box > img,
	.column-list-box > img{
		top: -58px;
	}
	.recipe-list-box{
		padding-top: 17%;
	}
	.journal-list-box,
	.column-list-box{
		padding-top: 18%;
	}
}

@media screen and (min-width: 700px) and (max-width: 799px){
	.recipe-list-box > img,
	.journal-list-box > img,
	.column-list-box > img{
		top: -48px;
	}
	.recipe-list-box{
		padding-top: 17%;
	}
	.journal-list-box,
	.column-list-box{
		padding-top: 18%;
	}
}

@media screen and (min-width: 581px) and (max-width: 699px){
	.recipe-list-box > img,
	.journal-list-box > img,
	.column-list-box > img{
		top: -54px;
	}
	.recipe-list-box{
		padding-top: 13%;
		border-radius: 20px;
	}
	.journal-list-box,
	.column-list-box{
		padding-top: 14%;
		border-radius: 20px;
	}
	.journal-list-wrap .link-btn a{
		font-size: 90%;
	}
}
input[type="text"]:valid,input[type="password"]:valid,input[type="radio"]:valid,input[type="checkbox"]:valid,input[type="email"]:valid,input[type="tel"]:valid,input[type="tel"]:valid,.select-box select:valid,.tp50 textarea:valid {
	background:white;
}
input[type="text"]:invalid,input[type="password"]:invalid,input[type="radio"]:invalid,input[type="checkbox"]:invalid,input[type="email"]:invalid,input[type="tel"]:invalid,.select-box select:invalid,.tp50 textarea:invalid {
	background:#ffd6d6;
}

.iframe-wrap {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	overflow:auto;
	-webkit-overflow-scrolling:touch;
	border:2px solid #ccc;
}
.iframe-wrap iframe {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	border:none;
	display:block;
}

/* 賞品選択フォーム */
.prize h2{
	text-align: center;
    padding-bottom: 10px;
	margin-top: 20px;
}
.prize .lead{
	font-size: 130%;
	line-height: 1.4;
	text-align: center;
	margin-top: 40px;
}
.prize form{
	margin-top: 40px;
}
.prize .prize-select-area{
	background: #fff;
    padding: 60px 30px;
    border-radius: 40px;
}
.prize .prize-select-area .prize-item{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	margin-bottom: 20px;
	gap: 30px;
}
.prize .prize-select-area .prize-item .select-msg {
	margin: 0;
	position: absolute;
	bottom: 100%;
	margin-bottom: 4px;
}
.prize .prize-select-area .prize-item label{
	cursor: pointer;
}
.prize .prize-select-area .prize-item .item-select-box{
	display: inline-block;
	position: relative;
}
.prize .prize-select-area .prize-item .item-select-box > input{
	display: none;
}
.prize .prize-select-area .prize-item .item-select-box img{
	border: 4px solid #ccc;
	border-radius: 20px;
	pointer-events: none;
	vertical-align: middle;
	width: 700px;
}
.prize .prize-select-area .prize-item.gift2 img{
	background: #fffeee;
}
.prize .prize-select-area .prize-item .item-select-box.select img{
	border-color: #ef8c91;
	background-color: #ffeded;
	border-width: 7px;
}
.prize .prize-select-area .prize-item .select-place label{
	display: inline-flex;
    align-items: center;
	position: absolute;
	left: 10%;
}
.prize .prize-select-area .prize-item .select-place .gift-a1 {
	top: 33%;
}
.prize .prize-select-area .prize-item .select-place .gift-a2 {
	top: 63.5%;
}
.prize .prize-select-area .prize-item .select-place .gift-a3 {
	top: 88%;
}
.prize .prize-select-area .prize-item .select-place label input{
	margin: 0;
	width: 20px;
	height: 20px;
}
.prize .prize-select-area .prize-item .select-place label input::before{
	width: 12px;
    height: 12px;
	margin: 3px;
}
.prize .prize-select-area .prize-item .select-place label span{
	padding-top: 4px;
	margin-left: 12px;
	font-weight: bold;
}
.prize .prize-select-area .btn-wrap{
	text-align: center;
	margin-top: 40px;
}
.prize .prize-select-area button{
	text-decoration: none;
    font-weight: bold;
    color: #fff;
    padding: 18px;
    display: inline-block;
    font-size: 32px;
    line-height: 1;
    border-radius: 50px;
    min-width: 300px;
    text-align: center;
    letter-spacing: 2px;
    border: none;
    cursor: pointer;
    outline: none;
	background-color: #ef8c91;
}
.prize .prize-select-area button:disabled{
	background-color: darkgray;
}
.prize .note-area{
	margin-top: 40px;
}

@media screen and (min-width: 1200px){
	.prize .prize-select-area .prize-item .select-msg{
		font-size: 0.9em;
	}
	.prize .prize-select-area .prize-item .select-place label{
		font-size: 0.9em;
	}
}

@media screen and (min-width: 581px) and (max-width: 1000px){
	.prize .prize-select-area .prize-item .select-place{
		gap: 0 2vw;
	}
	.prize .prize-select-area .prize-item .select-msg{
		margin-bottom: 0.2vw;
	}
	.prize .prize-select-area .prize-item .select-place label span{
		margin-left: 1vw;
	}
	.prize .prize-select-area .prize-item .select-place label input{
		width: 14px;
		height: 14px;
	}
	.prize .prize-select-area .prize-item .select-place label input::before{
		width: 8px;
		height: 8px;
		margin: 2px;
	}
	.prize .prize-select-area .prize-item .item-select-box.select img {
		border-width: 4px;
	}
}

/* 賞品選択フォーム */

/* モルック紹介ページ */
.molkky h3{
	font-size: 140%;
	margin: 42px 19px;
	color: #333;
}
.molkky-img-wrap h3{
	text-align: left;
	margin-bottom: 10px;
}

/* モルック紹介ページ ここまで */

/* FunFenFantマルシェ */
.fffmarche .event-list-box article {
	width: 100%;
	font-size: 1.1em;
	margin-bottom: 10px;
	padding: 0 50px;
	display: flex;
}

.fffmarche .event-list-box article .date {
	width: 30%;
}

.fffmarche .event-list-box article a,
.fffmarche .event-list-box article a:visited {
	color: blue;
	text-decoration: none;
}

.fffmarche img {
	width: 100%;
}

.fffmarche .application-form {
	margin: 60px 0;
	text-align: center;
}

.fffmarche .special-event-box {
	background-color: #fca01e;
	color: #fff;
	font-size: 200%;
	border: 2px solid #fff;
	box-shadow: 0px 0px 10px #888;
	padding: 20px;
	border-radius: 0.5em;
	display: inline-block;
	width: 50%;
	text-decoration: none;
	text-align: center;
}

/* FunFenFantマルシェ ここまで */