@charset "utf-8";
@media(max-width: 960px) {
		.scratch_fv_inner .fv_garland_l, .scratch_fv_inner .fv_garland_r {
				width: 370px;
		}
		.scratch_fv_inner .fv_garland_l {
				top: -22px;
				left: -200px;
		}
		.scratch_fv_inner .fv_garland_r {
				top: -22px;
				right: -200px;
		}
		.scratch_present_inner .scratch_present_corner_r {
				width: 270px;
				top: -110px;
				right: -60px;
		}
		.scratch_present_inner .scratch_present_corner_l {
				width: 196px;
				bottom: 300px;
				left: -30px;
		}
		.week_hd_ttl {
				width: 280px;
				height: 60px;
				font-size: 32px;
		}
		.week_hd_ttl.widthFree {
				width: auto !important;
				padding-right: 45px;
				padding-left: 30px;
				font-size: 20px;
		}
		.scratch_terms_inner::before {
				left: -180px;
		}
		.scratch_notes_col::after {
				right: -70px;
		}
}
@media(max-width: 767px) {
		.scratch_fv {
				padding: 20px 20px 20px;
				background: url(../images/scratch_bg_1.png) repeat 0 0;
				background-size: 80px;
		}
		.scratch_fv .fv_star {
				background-size: 100%;
				background-position: center center;
				z-index: -1;
		}
		.scratch_fv_inner .fv_garland_l, .scratch_fv_inner .fv_garland_r {
				width: 40vw;
		}
		.scratch_fv_inner .fv_garland_l {
				top: -22px;
				left: -13vw;
		}
		.scratch_fv_inner .fv_garland_r {
				top: -22px;
				right: -13vw;
		}
		.fv_garland_l img, .fv_garland_r img {
				animation: flipInXSP 0.8s linear infinite;
		}
		.scratch_fv_inner .fv_ribbon_wrap {
				position: absolute;
				top: 40vw;
				width: 130%;
				left: -15%;
				z-index: 20;
		}
		.scratch_fv::before {
				background: url("../images/scratch_fv_bg_star1-sp.png") no-repeat center center;
				background-size: 100%;
		}
		.scratch_fv .fv_star1, .scratch_fv .fv_star2, .scratch_fv .fv_star3 {
				display: none !important;
		}
		.scratch_introduction {
				padding: 40px 20px;
		}
		.scratch_introduction_col {
				border-radius: 20px;
				padding: 30px 20px;
		}
		.scratch_introduction_logo {
				display: block;
				margin: 0 0 15px;
		}
		.logo_presented {
				font-size: 16px;
				margin: 0 0 8px;
				text-align: center;
				transform: translateY(0);
		}
		.logo_fc {
				width: 70%;
				max-width: 200px;
				margin: 0 auto;
		}
		.scratch_introduction_col p {
				line-height: 1.8;
				font-size: 18px;
				text-align: left;
		}
		/* ============= */
		.scratch_introduction::after {
				bottom: -26px;
				height: 60px;
				background: url(../images/scratch_introduction_hr.png) no-repeat bottom;
				background-size: 1750px;
		}
		.scratch_present_col .week_hd {
				top: 20px;
				left: -15px;
		}
		.week_hd_ttl {
				width: 150px;
				height: 44px;
				font-size: 20px;
		}
		.week_hd_ttl::before {
				border-width: 0 15px 16px 0;
				bottom: -16px;
		}
		.scratch_present_lead {
				font-size: 18px;
				line-height: 1.8;
				margin: 0 0 40px;
		}
		.week_hd_ttl::after {
				border-width: 22px 10px 22px 0;
		}
		.scratch_present {
				background: url("../images/scratch_bg_2.png") repeat 0 0;
				background-size: 1750px;
				padding: 60px 20px 130px;
		}
		.scratch_present_col {
				border-radius: 20px;
				box-sizing: border-box;
				padding: 80px 20px 60px;
		}
		.scratch_present_inner {
				margin-bottom: 40px;
		}
		.scratch_btn {
				width: 100%;
				max-width: inherit;
				margin: 0 auto;
		}
		.scratch_btn a {
				height: 64px;
				font-size: 18px;
				border-radius: 60px;
		}
		.scratch_btn a::after {
				border-width: 8px 0 8px 8px;
				right: 18px;
				top: calc(50% - 8px);
		}
		/* ============= */
		.scratch_present_inner .scratch_present_corner_r {
				width: 150px;
				top: -75px;
				right: -50px;
		}
		.scratch_present_inner .scratch_present_corner_l {
				width: 110px;
				bottom: 170px;
				left: -50px;
		}
		/* ============= */
		.scratch_terms {
				background: url("../images/scratch_bg_3.png") repeat 0 0;
				background-size: 1750px;
				top: -80px;
				padding: 60px 20px 120px;
		}
		.scratch_terms_inner {
				border-radius: 20px;
				padding: 40px 20px;
		}
		.scratch_term_hd, .scratch_notes_hd {
				font-size: 22px;
		}
		.scratch_terms_col dl {
				display: block;
				padding: 0;
				margin: 0 0 25px;
		}
		.scratch_terms_dt {
				font-size: 16px;
				padding: 2px 10px;
		}
		.scratch_terms_col dt {
				display: flex;
				justify-content: center;
				margin: 0 0 5px;
		}
		.scratch_terms_col dd {
				display: block;
		}
		.scratch_terms_col p {
				font-size: 24px;
		}
		.scratch_terms_col p span {
				font-size: 80%;
		}
		.dayTo {
				text-align: center;
				transform: rotate(90deg);
		}
		.scratch_term_hd_wrap, .scratch_notes_hd_wrap {
				top: -80px;
				margin-bottom: -50px;
		}
		.scratch_terms_col::before, .scratch_notes_col::before {
				top: -2px;
				left: calc(50% - 70px);
				width: 140px;
				height: 20px;
		}
		.scratch_terms_col, .scratch_notes_col {
				padding: 60px 20px 20px;
		}
		.scratch_notes_iframe {
				height: 350px;
				padding-right: 15px;
		}
		.scratch_footer {
				background: url("../images/scratch_bg_4.png") repeat 0 0;
				background-size: 1750px;
				position: relative;
				top: -150px;
				padding: 60px 0px;
		}
		/* ============== */
		.scratch_option {
				background: url("../images/scratch_bg_5.png") repeat 0 0;
				background-size: 1750px;
				top: -140px;
				padding: 80px 20px 80px;
				margin-bottom: -160px;
		}
		.scratch_option_body p {
				font-size: 15px;
		}
		/* ============== */
		.scratch_terms_inner::before {
				background: url(../images/scratch_terms_corner_bg1.png) no-repeat 0 0;
				background-size: 100%;
				width: 150px;
				height: 90px;
				top: -40px;
				left: -50px;
		}
		.scratch_terms_inner::after {
				background: url(../images/scratch_terms_corner_bg2-2.png) no-repeat 0 0;
				background-size: 100%;
				width: 70px;
				height: 110px;
				bottom: 100px;
				right: -50px;
		}
		.scratch_notes_col::after {
				background: url(../images/scratch_terms_corner_bg2-1.png) no-repeat 0 0;
				background-size: 100%;
				width: 80px;
				height: 120px;
				bottom: -70px;
				right: -30px;
		}
}