@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap');

html,
body {
	height: 100%;
}

body {
	font-family: 'Noto Sans JP', "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	font-size: 18px;
	line-height: 1.8;
	letter-spacing: 0.24rem;
	background-color: #fff;
	color: #212121;
}

img {
	width: auto;
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

a:link,
a:hover,
a:visited {
	color: #212121;
	text-decoration: none;
}

sup {
	font-size: 10px;
}

#container {
	padding-top: 3em;
}

/*--------------------
common
---------------------*/
.inner {
	padding: 0 15px;
	width: 100%;
}

a {
	transition: .3s all;
}

a.btn {
	color: #231815;
	background: #ffea00;
	display: block;
	font-weight: bold;
	letter-spacing: normal;
	text-align: center;
	text-decoration: none;
	width: 100%;
	box-shadow: 0px 5px 0px 0px #c3b300;
	position: relative;
}

a.btn::after {
	position: absolute;
	content: "";
	display: block;
	background: url("/g/tieup_owned/kawai/img/cv_arrow.svg") right center no-repeat;
	background-size: 100%;
	width: 8px;
	height: 7px;
	right: 5%;
	top: 50%;
	transform: translate(0, -50%);
}

a img {
	transition: .3s all;
}

a:hover img {
	opacity: .9;
}

.pc {
	display: none;
}

.sp {
	display: block;
}

.flex {
	display: flex;
	flex-wrap: wrap;
}

.fade_off {
	opacity: 0;
	-webkit-transition: all 1s;
	-moz-transition: all 1s;
	-o-transition: all 1s;
	-ms-transition: all 1s;
	transition: all 1s;
}

.fade_on {
	opacity: 1;
}

.fc_yel {
	color: #ffff66;
}

/*--- cv ---*/
/*--------------------
.action
---------------------*/
.action {
	background: #203864;
	color: #fff;
	padding: 70px 0 30px;
}

.action dt {
	text-align: center;
	font-weight: bold;
	letter-spacing: .26em;
}

.action .cv01 {
	margin: 0 0 50px;
}

.action .cv01 dt {
	padding-bottom: 10px;
}

.action .cv01 dt>span {
	position: relative;
	padding: 0 40px;
}

.action .cv01 dt>span:before,
.action .cv01 dt>span:after {
	position: absolute;
	display: block;
	font-size: 2em;
	font-weight: normal;
}

.action .cv01 dt>span:before {
	content: "＼";
	left: 0;
	top: 50%;
	transform: translate(0, -50%);
}

.action .cv01 dt>span:after {
	content: "／";
	right: 0;
	top: 50%;
	transform: translate(0, -50%);
}

.action .cv02 {
	margin: 0 0 30px;
}

.action .cv02 dt {
	padding: 0 0 20px;
}

.action .cv01 dt,
.action .cv02 dt {
	font-size: 16px;
}

.action .cv02 dd a {
	margin: 0 auto;
	position: relative;
	letter-spacing: .28em;
	box-shadow: 0px 7px 0px 0px #c3b300;
	padding: 20px 0;
	font-size: 20px;
}

.action .cv02 dd a span {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	line-height: 120%;
}

.action .cv02 dd a span::before {
	content: "";
	display: block;
	background: url("/g/tieup_owned/kawai/img/free.svg") left center no-repeat;
	background-size: 100%;
	width: 85px;
	height: 85px;
	margin-right: 20px;
}

.action .cv02 dd a::after {
	display: none;
}

.action .cv02 dd a span::after {
	content: "";
	display: block;
	width: 18px;
	height: 20px;
	background: url(/g/tieup_owned/kawai/img/cv_arrow.svg) right center no-repeat;
	background-size: 100%;
	margin-left: 20px;
}

.action .atten {
	font-size: 10px;
	letter-spacing: 0.1em;
	margin-bottom: 30px;
}

/* 20230419add */
.campaign-dt-btn {
	margin-bottom: 1em;
}

.campaign-dt-btn a {
	position: relative;
	display: block;
	max-width: 600px;
	margin: 1em auto 0;
	text-align: center;
	border: 1px solid black;
	padding: 14px 0;
	font-size: 20px;
	background: #fff;
	font-weight: bold;
}

.campaign-dt-btn a::before {
	position: absolute;
	content: "";
	display: block;
	width: 12px;
	height: 14px;
	right: 15px;
	background: url(/g/general2/img/cv_arrow.svg) right center no-repeat;
	background-size: 100%;
	top: 50%;
	transform: translate(0, -50%);
}

/*--------------------
header
---------------------*/
header {
	position: fixed;
	width: 100%;
	top: 0;
	left: 0;
	background-color: #fff;
	z-index: 90;
}

header .inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	padding: 10px 15px 10px;
}

.logo {
	display: block;
	width: 50%;
	max-width: 200px;
}

header .account_btn_wrap {
	border-radius: 20px;
	font-size: 10px;
	width: 45%;
	max-width: 260px;
}

header .account_btn_wrap a.btn {
	line-height: 1.2;
	font-size: 10px;
	padding: 5px 10px;
}

/*** PAGETOP ***/

.g-go-to-top {
	display: grid;
	place-content: center;
	position: fixed !important;
	color: #3c66b0;
	z-index: 10;
	bottom: 20px;
	right: 20px;
	width: 42px;
	height: 42px;
	border-radius: 100%;
	box-shadow: 0px 5px 8px 0 rgb(0 0 0 / 20%);
	background: #f2f5f8;
	transition: .3s all;
	transition-property: transform;
	transform: translateY(calc(100% + 20px));
}

.arrow {
	position: relative;
	display: inline-block;
	padding: 10px;
}

.arrow::before {
	content: '';
	width: 11px;
	height: 11px;
	border-top: solid 2px #4a75ae;
	border-right: solid 2px #4a75ae;
	position: absolute;
	left: 4px;
	top: 7px;
	transform: rotate(-45deg);
}

.g-go-to-top:hover {
	opacity: .8;
}


/*--------------------
mv
---------------------*/


.main_visual .inner-wide {
	background: url("/g/tieup_owned/kawai/img/mv_bg_sp.png") center right no-repeat;
	background-size: cover;
	padding: 50px 0 20px;
}

.main_visual .mv_sub_sp {
	margin: 0 0 20px;
}

.main_visual .mv_sub_sp img {
	width: 55%;
}

.main_visual .mv_tit img.sp {
	width: 90%;
}


/*--------------------
main contents
---------------------*/
/* link_area--------------------*/

.link_area .link_area_tit {
	background: #e8ebef;
	text-align: center;
	color: #203864;
	padding: 50px 0 200px;
	font-weight: bold;
	font-size: 20px;
}

.link_area .link_area_tit .tit_sub {
	margin: 0 0 25px;
}

.link_area .link_area_tit .tit_sub span {
	background: #fff;
	position: relative;
	padding: 10px 15px;
}

.link_area .link_area_tit .tit_sub span::after {
	position: absolute;
	content: "";
	display: block;
	background: url(/g/tieup_owned/kawai/img/lead_bg.png) center bottom no-repeat;
	background-size: 100%;
	width: 100%;
	height: 11px;
	left: 50%;
	bottom: -10px;
	transform: translate(-50%, 0);
}

.link_area .link_area_tit h2 {
	font-weight: bold;
}

.link_area ul {
	justify-content: space-between;
	margin: -160px 0 100px;
}

.link_area ul li {
	width: 48%;
	box-shadow: 0px 0px 16px -6px rgba(0, 0, 0, 0.22);
	transition: .3s all;
}

.link_area ul li dt {
	background: #174179;
	min-height: 110px;
	padding: 10px 0 10px;
}

.link_area ul li dt img {
	display: block;
	text-align: center;
	margin: 0 auto;
}

.link_area ul li dt img.link_img {
	width: 30%;
}

.link_area ul li dd {
	background: #fff;
	padding: 35px 0 60px;
	position: relative;
}

.link_area ul li dd::after {
	position: absolute;
	content: "";
	display: block;
	background: url("/g/tieup_owned/kawai/img/lead_arrow.svg") center bottom no-repeat;
	background-size: 100%;
	width: 44px;
	height: 23px;
	left: 50%;
	bottom: -10px;
	transform: translate(-50%, 0);
}

.link_area ul li dd p {
	font-size: 12px;
	text-align: center;
	line-height: 1.3;
	color: #203864;
}

.link_area ul li dd p em {
	font-size: 20px;
	display: block;
	margin: 0 0 5px;
}

/* point --------------------*/
.point h2 {
	text-align: center;
	color: #203864;
	font-size: 30px;
	margin: 0 0 40px;
	padding: 0 15px;
}

.point h2 span {
	display: block;
	margin: 0 0 30px;
}

.point h2 span img {
	margin: 0 0 0 -20px;
}

.point_box {
	box-shadow: 0px 0px 16px -6px rgba(0, 0, 0, 0.22);
	margin: 0 0 50px;
	border-radius: 10px;
}

.point_box .point_box_tit {
	background: #174179;
	color: #fff;
	text-align: center;
	padding: 30px 0;
	border-radius: 10px 10px 0 0;
}

.point_box .point_box_tit h3 {
	font-size: 18px;
	position: relative;
	font-weight: bold;
}

.point_box .point_box_tit p {
	font-size: 10px;
}

.point_box .point_box_contents {
	border-radius: 0 0 10px 10px;
	padding: 15px 15px 50px;
	background-image: linear-gradient(#f6f6f6 1.5px, transparent 0), linear-gradient(90deg, #f6f6f6 1.5px, transparent 0);
	background-size: 20px 20px;
}

.point .point_box .point_box_contents img {
	border-radius: 5px;
}

.point .point_box .point_box_contents .flag_main,
.point .point_box .point_box_contents .low_main {
	justify-content: center;
	align-items: center;
	margin: 0 0 20px;
}

.point .point_box .point_box_contents .flag_main>dt,
.point .point_box .point_box_contents .flag_main>dd,
.point .point_box .point_box_contents .low_main>dt,
.point .point_box .point_box_contents .low_main>dd {
	width: 40%;
}

.point .point_box .point_box_contents .flag_main dt {
	font-size: 30px;
	font-weight: bold;
	text-align: center;
	margin: 40px 0 0;
}

.point .point_box .point_box_contents .flag_main dt img {
	width: 153px;
	height: auto;
}

.point .point_box .point_box_contents .flag_main dd {
	font-size: 114px;
	font-weight: bold;
	color: #174179;
}

.point .point_box .point_box_contents .flag_main dd span {
	background: linear-gradient(transparent 70%, #ff6 70%);
	line-height: 1.2;
	display: inline-block;
}

.point .point_box .point_box_contents .flag_main dd small {
	font-size: .6em;
}

.point .point_box .point_box_contents .flag_main2clm {
	display: flex;
	margin-bottom: 2em;
	justify-content: space-around;
}

.point .point_box .point_box_contents .flag_main2clm .flag_main {
	display: block;
	text-align: center;
}

.point .point_box .point_box_contents .flag_main2clm .flag_main dt,
.point .point_box .point_box_contents .flag_main2clm .flag_main dd {
	width: 100%;
	line-height: 1.2;
}

.point .point_box .point_box_contents .flag_list {
	justify-content: space-between;
	margin: 0 auto 60px;
}

.point .point_box .point_box_contents .flag_list li {
	width: 33%;
	text-align: center;
	font-weight: bold;
	margin: 0 0 27px;
}

.point .point_box .point_box_contents .flag_list li dl {
	line-height: 1.2;
}

.point .point_box .point_box_contents .flag_list li dt {
	font-size: 12px;
	letter-spacing: .05em;
}

.point .point_box .point_box_contents .flag_list li dt img {
	width: 126px;
	display: block;
	margin: 0 auto 10px;
}

.point .point_box .point_box_contents .flag_list li dd span {
	font-size: 36px;
	color: #174179
}

.point .point_box .point_box_contents .flag_list li dd small {
	font-size: .6em;
}

.point .point_box .point_box_contents .ac {
	margin: 0 0 40px;
}

.point_box .point_box_contents .point_box_lead {
	background: #fff;
	border: #203864 3px solid;
	padding: 35px 15px;
	text-align: center;
	font-weight: bold;
	font-size: 20px;
	color: #203864;
	margin: 0 0 35px;
}

.point_box .point_box_contents .point_box_lead strong {
	background: linear-gradient(transparent 50%, #edf1f7 50%);
	padding: 0 20px;
}

.point .point_box .point_box_contents .atten {
	font-size: 12px;
	letter-spacing: .06em;
	line-height: 1.5;
	margin: 0 0 40px;
}

.point .point_box .point_box_contents .low_main {
	margin: 50px 0;
}

.point .point_box .point_box_contents .low_main dt {
	font-size: 30px;
	font-weight: bold;
}

.point .point_box .point_box_contents .low_main dt .atten {
	margin: 0;
}

.point .point_box .point_box_contents .low_main .flag_main dt,
.point .point_box .point_box_contents .low_main .flag_main dd {
	width: 100%;
	text-align: center;
}

.point .point_box .point_box_contents .low_main .flag_main dt {
	margin: 0;
	line-height: 1.5;
}

.point .point_box .point_box_contents .low_main .flag_main dt img {
	width: 129px;
	margin: 0 10px 0 0;
}

.point .point_box .point_box_contents .low_main .flag_main dd {
	font-size: 60px;
	line-height: 1;
}

.check_tit {
	background: #4a75ae;
	position: relative;
	margin: 0 0 150px;
}

.check_tit::after {
	position: absolute;
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 50px 100px 0 100px;
	border-color: #4a75ae transparent transparent transparent;
	left: 50%;
	bottom: -29px;
	transform: translate(-50%, 0);
	z-index: -1;
}

.check_tit .inner {
	background: #4a75ae;
	position: relative;
	padding: 55px 80px 37px 180px;
}

.check_tit .inner::before,
.check_tit .inner::after {
	position: absolute;
	content: "";
	display: block;
}

.check_tit .inner::before {
	background: url("/g/tieup_owned/kawai/img/check_subtit.png") left top no-repeat;
	background-size: 100%;
	width: 176px;
	height: 188px;
	left: 0;
	top: -30px;
	z-index: 10;
}

.check_tit .inner::after {
	background: url("/g/tieup_owned/kawai/img/check_img00.png") right bottom no-repeat;
	background-size: 100%;
	width: 112px;
	height: 329px;
	right: 0;
	bottom: 0;
}

.check_tit .inner p {
	color: #fff;
	font-weight: bold;
	font-size: 24px;
	padding: 0 0 0 50px;
}

.check_tit .inner p.check_main_txt {
	background: #fff;
	color: #212121;
	padding: 30px 0 30px 30px;
	font-size: 30px;
	box-shadow: 0px 6px 0px 0px rgba(20, 47, 83, .38);
	border-radius: 10px;
	margin: 0 0 28px;
}

.check_tit .inner p.check_main_txt span {
	background: linear-gradient(transparent 70%, #ff6 70%);
}

.check_contents .check_contents_tit {
	text-align: center;
	margin: 0 0 50px;
}

.check_contents .check_contents_tit span {
	position: relative;
	font-size: 30px;
	font-weight: bold;
}

.check_contents .check_contents_tit span::after {
	position: absolute;
	content: "";
	display: block;
	background: url("/g/tieup_owned/kawai/img/check_ico.png") left center no-repeat;
	background-size: 100%;
	width: 92px;
	height: 91px;
	left: -60px;
	top: 50%;
	transform: translate(0, -50%);
	z-index: -1;
}

.check_contents .check_lead {
	text-align: center;
	margin: 0 0 70px;
}

.check_contents .point01_check01 {
	margin: 0 0 120px;
}

.check_contents .check_archive_list {
	justify-content: space-between;
}

.check_contents .check_archive_list li {
	width: 32%;
}

.check_contents .check_archive_list li dl dt {
	margin: 0 0 20px;
}

.check_contents .check_archive_list li dl dt img {
	width: 100%;
}

.check_contents .check_archive_list li dl dd {
	text-align: center;
	font-weight: bold;
	font-size: 18px;
}

.check_contents .point01_check02 .txt {
	background: #edf1f7;
}

.check_contents .point01_check02 .txt p {
	font-size: 16px;
	margin: 0 0 50px;
	letter-spacing: .15em;
}

.check_contents .point01_check02 .txt dl dt {
	font-size: 18px;
	padding: 5px 10px 5px 20px;
	border-left: 3px solid #212121;
	font-weight: bold;
	margin: 0 0 30px;
}

.check_contents .point01_check02 .txt dl dd {}

.last_lead {
	background: #4a75ae;
}

.last_lead .inner {
	position: relative;
	font-size: 30px;
	color: #fff;
	font-weight: bold;
	text-align: center;
	padding: 95px 15px;
	z-index: 1;
	letter-spacing: .24em;
}

.last_lead .inner::before {
	position: absolute;
	content: "";
	display: block;
	background: url("/g/tieup_owned/kawai/img/minkabu_bg.png") left center no-repeat;
	background-size: 100%;
	overflow: hidden;
	width: 327px;
	height: 100%;
	left: 0;
	top: 50%;
	transform: translate(0, -50%);
	z-index: -1;
}

#point02 {
	padding: 100px 0 0;
}

#point02 .point_box_contents ul {
	justify-content: space-between;
	margin: 0 auto 40px;
}

#point02 .point_box_contents ul li {
	font-size: 14px;
	font-weight: bold;
	letter-spacing: .15em;
	text-align: center;
}

#point02 .point_box_contents .flag01 {
	margin: 70px auto 40px;
}

#point02 .point_box_contents .flag01 li {
	width: 22%;
}

#point02 .point_box_contents .flag02 li {
	width: 14%;
}

#point02 .point_box_contents .flag03 li {
	width: 12%;
}

#point02 .point02_check01 {
	margin: 0 0 120px;
}


#point03 {
	padding: 100px 0 0;
}

#point03 .point03_content01 {
	padding: 60px 0 70px;
	position: relative;
}

#point03 .point03_content01::after {
	position: absolute;
	content: "";
	display: block;
	background: #edf1f7;
	width: 100%;
	height: 340px;
	left: 0;
	bottom: 0;
	z-index: -1;
}

#point03 .point03_content01 .inner {
	background: url("/g/tieup_owned/kawai/img/gfx_img01.png") right bottom no-repeat;
	background-size: 50%;
	position: relative;
}

#point03 .point03_content01 .inner .gfx_rank {
	text-align: center;
	width: 50%;
	padding: 50px 0 0;
	margin: 0 0 130px;
}

#point03 .point03_content01 .inner .gfx_rank img {
	width: 55%;
}

#point03 .point03_content01 .inner .gfx_info {
	width: 50%;
}

#point03 .point03_content01 .inner .gfx_info .gfx_logo {
	margin: 0 0 20px;
	text-align: center;
}

#point03 .point03_content01 .inner .gfx_info .gfx_logo img {
	width: 55%;
}

#point03 .point03_content01 .inner .gfx_info .gfx_name {
	width: 70%;
	margin: 0 auto;
	color: #203864;
	font-size: 24px;
	font-weight: bold;
}

#point03 .point03_content01 .inner .gfx_info .gfx_name small {
	font-size: 18px;
}

#point03 .point03_content01_atn {
	background: #edf1f7;
	padding-bottom: 10px;
}

#point03 .point03_content01_atn p {
	max-width: 980px;
	margin: auto;
	font-size: 11px;
	padding: 0 10px;
	box-sizing: border-box;
	letter-spacing: 0.1em;
}

#point03 .point03_content02 {
	background-color: #00102e;
	background-image: url("/g/tieup_owned/kawai/img/gfx_bg01.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	padding: 187px 0 53px;
}

#point03 .point03_content02 h3 {
	text-align: center;
	margin: 0 0 65px;
}

#point03 .point03_content02 h3 span {
	color: #fff;
	font-size: 40px;
	text-align: center;
	position: relative;
	font-weight: normal;
	letter-spacing: 0.23em;
	padding: 0 30px;
}

#point03 .point03_content02 h3 span::before {
	position: absolute;
	content: "";
	display: block;
	background: url("/g/tieup_owned/kawai/img/link_ico03.png") center top no-repeat;
	background-size: 100%;
	width: 72px;
	height: 72px;
	left: 50%;
	top: -110px;
	transform: translate(-50%, 0);
}

#point03 .point03_content02 h3 span::after {
	position: absolute;
	content: "";
	display: block;
	background: url(/g/tieup_owned/kawai/img/gfx_line.png) right bottom no-repeat;
	background-size: 100%;
	width: 567px;
	height: 190px;
	right: -110px;
	bottom: -105px;
}

#point03 .point03_content02 ul {
	justify-content: space-between;
	margin: 0 0 65px;
}

#point03 .point03_content02 ul li {
	width: 32%;
	text-align: center;
}

#point03 .point03_content02 ul li dd {
	color: #fff;
	font-weight: bold;
}

#point03 .point03_content02 .atten {
	color: #fff;
	font-size: 12px;
}


#point03 .point03_content03 {
	position: relative;
}

#point03 .point03_content03 .slider_inner {
	width: 100%;
	margin: 0 auto;
	position: absolute;
}

#point03 .point03_content03::after {
	position: absolute;
	content: "";
	display: block;
	background: url("/g/tieup_owned/kawai/img/gfx_slider_bg.png") left center no-repeat;
	background-size: 100%;
	width: 80%;
	height: 760px;
	left: 0;
	top: 50%;
	transform: translate(0, -50%);
	z-index: -1;
}

#point03 .point03_content03 .slider_main {
	width: 100%;
	margin: 0 auto;
	z-index: 10;
}

#point03 .point03_content03 .slide .img img {
	width: 100%;
}

#point03 .point03_content03 .slide .txt {
	padding: 0 0 0 70px;
}

#point03 .point03_content03 .slide .txt .caption {
	font-size: 30px;
	font-weight: bold;
	margin: 0 0 80px;
}

#point03 .point03_content03 .slide .txt .message {
	font-size: 20px;
	font-weight: bold;
	padding: 5px 0 5px 25px;
	border-left: 3px solid #212121;
}

#point03 .point03_content03 .slick-dots li button:before {
	background: #212121;
	border-radius: 10px;
	width: 10px;
	height: 10px;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	opacity: 1;
	content: "";
}

#point03 .point03_content03 .slick-dots li {
	margin: 0 10px;
}

#point03 .point03_content03 .slick-dots li.slick-active button:before {
	background: #212121;
	border-radius: 10px;
	width: 15px;
	height: 15px;
}

#point03 .point03_content03 .slick-prev,
#point03 .point03_content03 .slick-next {
	width: 30px;
	height: 30px;
	background-color: #fff;
	z-index: 10;
	border: 1px solid #212121;
}

#point03 .point03_content03 .slick-prev {
	left: -45px;
}

#point03 .point03_content03 .slick-next {
	right: -45px;
}

#point03 .point03_content03 .slick-prev:before,
#point03 .point03_content03 .slick-next:before {
	font-size: 16px;
}

#point03 .point03_content03 .slick-prev:before {
	content: '\2190';
	font-family: initial;
}

[dir='rtl'] .slick-prev:before {
	content: '\2190';
}

#point03 .point03_content03 .slick-next:before {
	content: '\2192';
	font-family: initial;
}

[dir='rtl'] .slick-next:before {
	content: '\2192';
}

#point03 .point03_content03 .slick-dots li button:before {
	font-size: 12px;
	color: #fff;
	opacity: 1;
}

#point03 .point03_content03 .slick-prev:before,
#point03 .point03_content03 .slick-next:before,
#point03 .point03_content03 .slick-dots li.slick-active button:before {
	opacity: 1;
	color: black;
}

#point03 .point03_check01 {
	position: relative;
}

#point03 .point03_check01::after {
	position: absolute;
	content: "";
	display: block;
	background: #edf1f7;
	width: 100%;
	height: 442px;
	left: 0;
	bottom: 0;
	z-index: -1;
}

#point03 .point03_check01 .point03_check01_contents {
	margin: 0 0 65px;
}

#point03 .point03_check01 .point03_check01_contents .check_contents_tit span {
	font-size: 24px;
}

#point03 .point03_check01 .point03_check01_contents .check_contents_tit span::after {
	left: -30px;
	background: none;
}

#point03 .point03_check01 .lead {
	font-size: 24px;
	font-weight: bold;
	text-align: center;
}

#point03 .point03_check01_ac {
	background: #edf1f7;
	padding: 100px 0 100px;
}

#point03 #ac-menu02 .detail {
	background: #fff;
}


#point04 {
	padding: 100px 0 0;
}

#point04 .point_box_contents {
	padding: 80px 70px 55px;
}

#point04 .campaign {
	margin: 0 0 60px;
}

#point04 .campaign dt {}

#point04 .campaign dd {
	padding: 20px 0 0 0;
}

#point04 .campaign dd h4 {
	font-size: 20px;
	font-weight: bold;
	color: #174179;
	border-bottom: 2px solid #174179;
	position: relative;
	margin: 0 0 10px;
}

#point04 .campaign dd h4::after {
	position: absolute;
	content: "";
	display: block;
	background: url("/g/tieup_owned/kawai/img/can_ico.png") right bottom no-repeat;
	background-size: 100%;
	width: 36px;
	height: 36px;
	right: 0;
	bottom: 0;
}

#point04 .campaign dd p {
	font-size: 16px;
	letter-spacing: .1em;
}

/*--------------------
#ac-menu
---------------------*/

#ac-menu li,
#ac-menu02 li {
	background: #4a75ae;
	margin-bottom: 15px;
}

#ac-menu .label,
#ac-menu02 .label {
	cursor: pointer;
	color: #fff;
	background: #4a75ae;
	font-size: 1.125rem;
	font-weight: bold;
	padding: 20px 15px;
	position: relative;
	transition: .3s;
	text-align: center;
	font-size: 24px;
}

#ac-menu .label::before,
#ac-menu .label::after,
#ac-menu02 .label::before,
#ac-menu02 .label::after {
	content: '';
	width: 20px;
	height: 4px;
	background: #fff;
	position: absolute;
	top: 50%;
	right: 5%;
	transform: translateY(-50%);
}

#ac-menu .label::after,
#ac-menu02 .label::after {
	transform: translateY(-50%) rotate(90deg);
	transition: .1s;
}

#ac-menu .label.open::before,
#ac-menu02 .label.open::before {
	opacity: 0;
}

#ac-menu .label.open::after,
#ac-menu02 .label.open::after {
	transform: rotate(180deg);
}

#ac-menu .detail,
#ac-menu02 .detail {
	padding: 20px 20px 40px;
	display: none;
	background: #edf1f7;
}

#ac-menu .detail h3,
#ac-menu02 .detail h3 {
	color: #203864;
	font-weight: bold;
	font-size: 18px;
	margin-bottom: 20px;
	line-height: 1.4;
}

#ac-menu .detail p,
#ac-menu02 .detail p {
	font-size: 14px;
	line-height: 1.6;
	margin-bottom: 10px;
}

#ac-menu .detail p strong,
#ac-menu02 .detail p strong {
	font-size: 16px;
	color: #26a6dc;
}

#ac-menu .detail .caption,
#ac-menu02 .detail .caption {
	display: block;
	margin-bottom: 20px;
}

/*--------------------
account
---------------------*/
#account_step {
	letter-spacing: normal;
	overflow: hidden;
}

#account_step h2 {
	font-size: 24px;
	text-align: center;
	line-height: 1.4;
	margin: 30px 0;
	color: #203864;
	letter-spacing: .24rem;
}

#account_step h2 span {
	display: block;
	font-size: 16px;
	font-weight: bold;
	padding: 40px 0 0;
}

.step_info {
	background: #fff;
	border-radius: 10px;
	margin-bottom: 50px;
	padding: 50px 0 20px;
	position: relative;
	box-shadow: 0px 0px 16px -6px rgb(0 0 0 / 22%);
}

.step_info::after,
.examination::after {
	display: block;
	position: absolute;
	bottom: -30px;
	right: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	width: 20px;
	height: 20px;
	border-top: 4px solid #174179;
	border-right: 4px solid #174179;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}

.step_info:last-of-type:after {
	display: none;
}

#account_step .icon_step {
	display: block;
	position: absolute;
	width: 100px;
	height: 100px;
	line-height: 1.2;
	top: -60px;
	left: 10px;
	box-sizing: border-box;
}

#account_step .icon_step em {
	font-size: 50px;
}

.step_info .read {
	color: #102955;
	font-weight: bold;
	text-align: center;
	font-size: 18px;
	margin-bottom: 20px;
}

.step_info .text {
	padding: 10px;
	line-height: 1.6;
	font-size: 14px;
}

.examination {
	background: #50607b;
	color: #fff;
	font-size: 25px;
	text-align: center;
	width: 100%;
	padding: 10px 0;
	margin-bottom: 50px;
	position: relative;
}

#account_step .point_box.card h3 {
	letter-spacing: .24rem;
	line-height: 2;
}

#account_step .point_box.card h3 em {
	background: #fff;
	padding: 10px;
	font-size: 24px;
	color: #174179;
	font-weight: bold;
	margin: 0 10px;
}

#account_step .point_box.card .point_box_contents {
	padding: 55px 70px 55px;
}

#account_step .point_box.card .point_box_contents .flex_pc {
	justify-content: space-between;
	align-items: center;
	margin: 0 0 35px;
}

#account_step .point_box.card .point_box_contents .card_box {
	width: 45%;
	background: #f1f9fd;
	padding: 40px;
	text-align: center;
	letter-spacing: .24rem;
}

#account_step .point_box.card .point_box_contents .card_box dt {
	font-size: 24px;
	font-weight: bold;
	margin: 0 0 30px;
}

#account_step .point_box.card .point_box_contents .card_box dd img {
	display: block;
	margin: 0 auto 20px;
}

#account_step .point_box.card .point_box_contents .card_box dd p {
	font-size: 16px;
	font-weight: bold;
}

#account_step .point_box.card .point_box_contents .card_box dd p strong {
	font-size: 18px;
}

#account_step .point_box.card .point_box_contents .flex_pc>p {
	font-size: 44px;
	font-weight: bold;
	color: #174179;
}

#account_step .point_box.card .point_box_contents .point_box_lead {
	letter-spacing: .24rem;
}

#account_step .point_box.card .point_box_contents .point_box_lead strong {
	font-size: 30px;
	letter-spacing: .24rem;
}


#footerWrap {
	width: 100%;
	background: #f1f9fd;
	line-height: 1.8;
	letter-spacing: .05rem;
}

#footerWrap #attention h3 {
	margin: 0 0 30px;
}

#footerWrap #attention h3 span {
	font-size: 20px;
	font-weight: bold;
	position: relative;
	padding: 47px;
}

#footerWrap #attention h3 span::before {
	position: absolute;
	content: "";
	display: block;
	background: url("/g/tieup_owned/kawai/img/atten_ico.png") left center no-repeat;
	background-size: 100%;
	width: 94px;
	height: 85px;
	left: 0;
	top: 50%;
	transform: translate(0, -50%);
}

#footerWrap #attention {
	margin: 10px auto;
	background: url(/g/img/beginner/attention.gif) no-repeat 10px 20px;
	background-size: 100px auto;
	padding: 55px 10px 10px 10px;
	width: 100%;
	max-width: 980px;
	font-size: 12px !important;
	box-sizing: border-box;
}

#footerWrap #attention dt {
	font-weight: bold !important;
	margin-bottom: 5px;
	font-size: 12px;
}

#footerWrap #attention dd {
	margin-bottom: 10px;
	margin-left: 0;
	font-size: 12px;
}

#footerWrap #attention a.textlink1 {
	font-size: 10px;
}

#footerWrap #attention2 {
	width: 100%;
	max-width: 980px;
	margin: 10px auto;
	padding-top: 0;
	box-sizing: border-box;
	padding-bottom: 10px;
}

#footerWrap #attention2 a {
	font-size: 16px;
	border-bottom: 1px solid #116FBB;
	transition: .3s all;
	font-weight: bold;
	color: #116FBB;
	margin: 0 0 5px;
}

#footerWrap #attention2 a:hover {
	border-bottom: none;
}

#footerWrap #footer {
	width: 100%;
	min-width: inherit;
	background: none;
	padding: 10px 0;
	text-align: center;
	background-color: #ffffff;
}

#footerWrap #attention {
	background: url(/g/tieup_owned/kawai/img/atten_icon2.png) no-repeat left 15px;
	padding: 100px 10px 10px 10px;
}


/****************************

PC

****************************/

@media screen and (min-width:751px) {
	#container {
		padding-top: 70px;
	}

	.inner {
		max-width: 1000px;
		margin: 0 auto;
	}

	.inner-wide {
		max-width: 1366px;
		margin: 0 auto;
	}

	.inner1200 {
		max-width: 1200px;
		margin: 0 auto;
	}

	.pc {
		display: block;
	}

	.sp {
		display: none;
	}

	.flex_pc {
		display: flex;
		flex-wrap: wrap;
	}

	/*--- cv ---*/
	/*--------------------
.action
---------------------*/

	.action .cv01 dt,
	.action .cv02 dt {
		font-size: 30px;
	}

	.action .cv01 dt>span {
		padding: 0 70px;
	}

	.action .cv02 dd a {
		font-size: 30px;
		padding: 20px 0;
		width: 100%;
	}

	.action .cv02 dd a:hover {
		box-shadow: none;
		margin: 7px auto -7px;
	}


	/*--------------------
header
---------------------*/
	header .account_btn_wrap {
		height: 50px;
		width: 46%;
		font-size: 16px;
	}

	header .account_btn_wrap a.btn:hover {
		box-shadow: none;
		margin: 5px 0 -5px;
	}

	header .account_btn_wrap a.btn {
		padding: 5px 0;
		font-size: 13px;
		line-height: 1.2;
	}

	/* ac-menu */
	#ac-menu .label,
	#ac-menu02 .label {
		padding: 20px 30px;
	}

	#ac-menu .detail,
	#ac-menu02 .detail {
		padding: 30px 40px;
	}

	#ac-menu .detail .caption,
	#ac-menu02 .detail .caption {
		float: right;
		margin-left: 20px;
	}

	/*--------------------
mv
---------------------*/

	.main_visual {
		background: linear-gradient(270deg, rgb(0 32 72) 0%, rgb(0 34 75) 17%, rgb(0 19 48) 83%, rgba(0, 2, 22, 1) 100%);
	}

	.main_visual .inner-wide {
		background: url("/g/tieup_owned/kawai/img/mv_bg_pc.png") center top -20px no-repeat;
		background-size: 100%;
	}

	.main_visual .inner1200 {
		padding: 85px 0 35px;
	}

	.main_visual .mv_tit {
		margin: 0 0 40px;
	}

	.main_visual .mv_img {
		margin: -25px 0 20px;
	}

	.main_visual .mv_img img {
		width: 53%;
	}



	/*--------------------
main contents
---------------------*/
	/* link_area--------------------*/

	.link_area .link_area_tit {
		padding: 80px 0 247px;
	}

	.link_area .link_area_tit .tit_sub {
		margin: 0 0 50px;
	}

	.link_area .link_area_tit .tit_sub span {
		font-size: 22px;
		padding: 14px 26px;
	}

	.link_area .link_area_tit .tit_sub span::after {
		bottom: -10px;
	}

	.link_area .link_area_tit h2 {
		font-size: 30px;
		margin: 0 0 30px;
	}

	.link_area ul {
		margin: -200px auto 150px;
	}

	.link_area ul li {
		width: 24%;
	}

	.link_area ul li:hover {
		margin: 10px 0 -10px
	}

	.link_area ul li dt {
		min-height: 200px;
		padding: 30px 0 28px;
	}

	.link_area ul li dd p {
		font-size: 18px;
	}

	.link_area ul li dd p em {
		font-size: 30px;
	}

	.link_area ul li dt img.link_img {
		margin: 28px auto 0;
	}

	.link_area ul li dd {
		max-height: 160px;
	}

	.link_area ul li dd::after {
		width: 64px;
		height: 33px;
		bottom: -20px;
	}


	/* point --------------------*/
	.point .point_box {
		margin: 0 0 100px;
	}

	.point .point_box .point_box_contents {
		padding: 15px 70px 55px;
	}

	.point .point_box .point_box_contents .flag_list li {
		width: 33%;
	}

	.point h2 {
		font-size: 60px;
	}

	.point_box .point_box_tit h3 {
		font-size: 30px;
	}

	.point_box .point_box_tit p {
		font-size: 14px;
	}

	.point .point_box .point_box_contents .flag_list li dt {
		font-size: 16px;
	}

	/* check --------------------*/
	.check_contents .point01_check02 .txt,
	.check_contents .point01_check02 .img {
		width: 50%;
		height: 500px;
		background: #edf1f7;
	}

	.check_contents .point01_check02 .img img {
		object-fit: cover;
		height: 500px;
	}

	.check_contents .point01_check02 .txt {
		background: #edf1f7;
	}

	.check_contents .point01_check02 .txt .inner {
		background: #edf1f7;
		width: 500px;
		margin: 0 0 0 auto;
		padding: 70px 50px 0 0;
	}

	.check_contents .point01_check02 .check_contents_tit {
		margin: 0 0 80px;
	}



	#point03 .point03_content03 {
		padding: 80px 0 130px;
		min-height: 968px;
		position: relative;
	}

	#point03 .point03_content03 .slider_inner {
		width: 1300px;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}

	#point03 .point03_content03 .slider_main {
		width: 1000px;
	}

	#point03 .point03_content03 .flex_pc {
		justify-content: space-between;
	}

	#point03 .point03_content03 .slide .txt {
		width: 40%;
		padding: 160px 0 0 20px;
	}

	#point03 .point03_content03 .slide .img {
		width: 59%;
	}

	#point03 .point03_content03 .slide .img img {
		width: 630px;
	}

	#point03 .point03_check01_contents {
		justify-content: space-between;
	}

	#point03 .point03_check01_contents dl {
		width: 48%;
	}

	#point04 .campaign {
		justify-content: space-between;
	}

	#point04 .campaign dt,
	#point04 .campaign dd {
		width: 48%;
	}

	#footerWrap #attention2,
	#footerWrap #attention dt,
	#footerWrap #attention dd {
		font-size: 14px;
	}
}


@media screen and (min-width:1000px) {

	/******************************
account_step
*****************************/
	.step_container {
		display: flex;
		justify-content: space-between;
		margin: 100px 0 0;
	}

	.step_info {
		width: 270px;
	}

	.step_info .image img {
		width: 100%;
	}

	.step_info .read {
		font-size: 1.125rem;
	}

	.examination {
		width: 40px;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
		font-size: 1.25rem;
		line-height: 40px;
		letter-spacing: 2rem;
		padding-top: 30px;
	}

	.step_info::after,
	.examination::after {
		top: 0;
		bottom: 0;
		right: -23px;
		left: auto;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		width: 16px;
		height: 16px;
	}

	.step_info .text {
		font-size: 0.875rem;
	}

	.campagin_info img {
		max-width: inherit;
	}

	#account_step .point_box {
		margin: 0 0 100px;
	}

	#account_step h2 {
		font-size: 50px;
		margin-top: 122px;
	}

	#account_step h2 span {
		font-size: 24px;
	}
}

@media screen and (max-width:750px) {
	.action {
		padding: 50px 0 30px;
	}

	.link_area ul li {
		margin: 0 0 20px;
	}

	.point h2 span img {
		width: 15%;
	}

	.point .point_box .point_box_contents .flag_main dt {
		font-size: 20px;
	}

	.point .point_box .point_box_contents .flag_main dd {
		font-size: 70px;
	}

	.point .point_box .point_box_contents .flag_main>dt,
	.point .point_box .point_box_contents .flag_main>dd,
	.point .point_box .point_box_contents .low_main>dt,
	.point .point_box .point_box_contents .low_main>dd {
		width: 100%;
		text-align: center;
	}

	.point .point_box .point_box_contents .flag_main>dd {
		line-height: 1;
		margin: 0 0 40px;
	}

	.point .point_box .point_box_contents .flag_main2clm {
		display: block;
		margin-bottom: 3em;
	}

	.point .point_box .point_box_contents .flag_main2clm .flag_main {
		width: 100%;
	}

	.point .point_box .point_box_contents .flag_main2clm .flag_main dt {
		line-height: 1.8;
	}

	.point .point_box .point_box_contents .flag_main2clm .flag_main dd {
		line-height: 1.1;
	}

	.point .point_box .point_box_contents .flag_main2clm .flag_main>dd {
		margin: 0 0 60px;
	}

	.point .point_box .point_box_contents .flag_list {
		justify-content: space-between;
		margin: 0 auto 20px;
	}

	.point_box .point_box_contents .point_box_lead {
		font-size: 14px;
		padding: 20px 10px;
	}

	.point .point_box .point_box_contents .low_main>dt {
		margin: 0 0 40px;
	}

	.point .point_box .point_box_contents .flag_list li dd span {
		font-size: 20px;
	}

	.point_box .point_box_contents .point_box_lead strong {
		padding: 0 5px;
	}

	#ac-menu .label,
	#ac-menu02 .label {
		font-size: 14px;
		padding: 15px 15px;
	}

	.check_tit {
		margin: 0 0 100px;
	}

	.check_tit .inner {
		padding: 55px 80px 37px 20px;
	}

	.check_tit .inner p.check_main_txt {
		padding: 20px 50px 20px 30px;
		font-size: 20px;
	}

	.check_tit .inner::before {
		width: 126px;
		height: 138px;
		left: 10px;
		top: -60px;
	}

	.check_tit .inner p {
		font-size: 20px;
		padding: 0 0 0 30px;
	}

	.check_contents .check_contents_tit span {
		font-size: 18px;
	}

	.check_contents .check_archive_list li {
		width: 100%;
		margin: 0 0 50px;
	}

	.check_contents .check_contents_tit span::after {
		width: 62px;
		height: 61px;
	}

	.point01_check02 .inner {
		padding: 50px 15px;
	}

	.check_contents .check_lead {
		margin: 0 0 50px;
		font-size: 12px;
	}

	.check_contents .point01_check02 .txt p {
		text-align: center;
	}

	.check_contents .point01_check02 .txt dl dt {
		text-align: center;
		border-left: none;
	}

	.last_lead .inner {
		font-size: 18px;
		padding: 50px 15px;
	}

	.last_lead .inner::before {
		width: 40%;
	}

	#point02 .point_box_contents ul {
		width: 85%;
	}

	#point02 .point_box_contents .flag01 li {
		width: 45%;
		margin: 0 0 30px;
	}

	#point02 .point_box_contents .flag02 li {
		width: 30%;
		margin: 0 0 30px;
	}

	#point02 .point_box_contents .flag03 {
		justify-content: flex-start;
	}

	#point02 .point_box_contents .flag03 li {
		width: 22%;
		margin: 0 4% 30px 0;
	}

	#point02 .point_box_contents .flag03 li:nth-child(4n) {
		margin: 0 0 30px 0;
	}

	#point02 .point_box_contents .flag_money {
		line-height: 1.2;
		margin: 10px 0 0;
	}

	#point03 .point03_content01 {
		padding: 0;
	}

	#point03 .point03_content01 .inner {
		background: url(/g/tieup_owned/kawai/img/gfx_img01.png) right bottom 10px no-repeat;
		background-size: 55%;
		padding: 0 0 50px;
	}

	#point03 .point03_content01::after {
		height: 32vh;
	}

	#point03 .point03_content01 .inner .gfx_rank {
		text-align: center;
		width: 70%;
		padding: 0;
		margin: 0 auto 180px;
	}

	#point03 .point03_content01 .inner .gfx_info .gfx_name {
		font-size: 16px;
	}

	#point03 .point03_content01 .inner .gfx_info .gfx_name small {
		font-size: 12px;
	}

	#point03 .point03_content02 {
		padding: 80px 0 53px
	}

	#point03 .point03_content02 h3 span::before {
		width: 52px;
		height: 52px;
		left: 50%;
		top: -80px;
	}

	#point03 .point03_content02 h3 {
		margin: 0 0 105px;
	}

	#point03 .point03_content02 h3 span {
		font-size: 24px;
		bottom: -60px;
	}

	#point03 .point03_content02 h3 span::after {
		width: 100%;
		right: inherit;
		left: 55%;
		transform: translate(-50%, 0);
		bottom: -60px;
	}

	#point03 .point03_content02 ul {
		justify-content: space-around;
	}

	#point03 .point03_content02 ul li {
		width: 48%;
	}

	#point03 .point03_content02 ul li dd {
		font-size: 12px;
	}

	#point03 .point03_content03 {
		height: 165vw;
	}

	#point03 .point03_content03 .slide .txt {
		padding: 50px 10px 30px;
		text-align: center;
	}

	#point03 .point03_content03 .slide .txt .caption {
		font-size: 20px;
		margin: 0 0 20px;
	}

	#point03 .point03_content03 .slide .txt .message {
		border-left: none;
		font-size: 14px;
		padding: 0;
	}

	#point03 .point03_content03 .slide .img img {
		width: 80%;
		margin: 0 auto 40px;
	}

	#point03 .point03_content03::after {
		background: url(/g/tieup_owned/kawai/img/gfx_slider_bg.png) right center no-repeat;
		background-size: cover;
		width: 100%;
		top: inherit;
		left: inherit;
		transform: inherit;
		height: 60vh;
		right: 50px;
		bottom: 50px;
	}

	#point03 .point03_content03 .slick-prev {
		left: 10px;
	}

	#point03 .point03_content03 .slick-next {
		right: 10px;
	}

	#point03 .point03_check01 .point03_check01_contents .check_contents_tit span {
		font-size: 18px;
	}

	#point03 .point03_check01_contents dd {
		text-align: center;
		margin: 0 0 50px;
	}

	#point03 .point03_check01_contents dd img {
		width: 60%;
		margin: 0 auto;
	}

	#point03 .point03_check01 .lead {
		font-size: 16px;
		text-align: center;
	}

	#point03 .point03_check01 .point03_check01_contents {
		margin: 0;
	}

	#point03 .point03_check01_ac {
		padding: 50px 0 50px;
	}

	#point04 {
		padding: 50px 0 0;
	}

	#point04 .point_box_contents {
		padding: 50px 20px 50px;
	}

	#point04 .campaign dd h4 {
		font-size: 18px;
	}

	#point04 .campaign dd p {
		font-size: 14px;
	}

	#account_step h2 {
		margin: 50px 0 80px;
	}

	#account_step .icon_step {
		width: 80px;
		height: 80px;
		top: -40px;
	}

	#account_step .point_box.card h3 em {
		line-height: 2;
		margin: 5px 10px;
		font-size: 16px;
		padding: 2px 5px;
	}

	#account_step .point_box.card .point_box_contents {
		padding: 50px 20px 10px;
	}

	#account_step .point_box.card .point_box_contents .card_box {
		width: 100%;
	}

	#account_step .point_box.card .point_box_contents .card_box dt {
		font-size: 20px;
	}

	#account_step .point_box.card .point_box_contents .card_box dd p {
		font-size: 12px;
	}

	#account_step .point_box.card .point_box_contents .flex_pc>p {
		font-size: 36px;
		text-align: center;
	}

	#account_step .point_box.card .point_box_contents .point_box_lead strong {
		font-size: 20px;
	}
}

@media screen and (max-width:480px) {

	.main_visual .inner-wide {
		padding: 30px 0 20px;
	}

	.action {
		padding: 20px 0 30px;
	}

	.action .cv01 {
		margin: 0 0 20px;
	}

	.action .cv01 dt,
	.action .cv02 dt {
		font-size: 12px;
	}

	.action .cv01 dt>span {
		padding: 0 25px;
		display: inline-block;
	}

	.action .cv01 dt>span:before,
	.action .cv01 dt>span:after {
		font-size: 1.5em;
	}

	.action .cv01 dt,
	.action .cv02 dt {
		padding: 0 0 10px;
	}

	.action .cv02 dd a {
		padding: 15px 0;
		font-size: 14px;
	}

	.action .cv02 dd a span::before {
		width: 50px;
		height: 50px;
		left: -80px;
	}

	.action .cv02 dd a span::after {
		width: 12px;
		right: -60px;
	}

	.campaign-dt-btn a {
		font-size: 14px;
	}

	.link_area ul {
		margin: -160px 0 70px;
	}

	.link_area .link_area_tit {
		font-size: 14px;
	}

	.link_area ul li {
		margin: 0 0 20px;
	}

	.link_area ul li dt img {
		margin: 5px auto 5px;
		width: 35%;
	}

	.link_area ul li dd {
		padding: 15px 0 40px;
		max-height: 100px;
	}

	.link_area .link_area_tit .tit_sub span {
		display: inline-block;
	}

	.link_area .link_area_tit .tit_sub span::after {
		bottom: -7px;
	}

	#ac-menu .detail,
	#ac-menu02 .detail {
		padding: 20px 20px 20px;
	}

	#ac-menu .detail h3,
	#ac-menu02 .detail h3 {
		font-size: 14px;
		margin-bottom: 10px;
	}

	.point h2 {
		font-size: 20px;
	}

	.point_box .point_box_tit {
		padding: 20px 10px;
	}

	.point_box .point_box_tit h3 {
		font-size: 14px;
	}

	.point_box .point_box_contents {
		padding: 15px 20px 10px;
	}

	.point .point_box .point_box_contents .flag_list li {
		width: 48%;
	}

	#ac-menu .label::before,
	#ac-menu .label::after,
	#ac-menu02 .label::before,
	#ac-menu02 .label::after {
		width: 10px;
		height: 2px;
	}

	.point_box .point_box_contents .point_box_lead {
		font-size: 12px;
	}

	.point_box .point_box_contents .point_box_lead small {
		font-size: 10px;
		line-height: 1.8;
		display: block;
		margin: 5px 0 0;
	}

	.point .point_box .point_box_contents .low_main {
		margin: 20px 0;
	}

	.point .point_box .point_box_contents .low_main dt {
		font-size: 24px;
		line-height: 1.6;
	}

	.check_contents .check_archive_list li dl dd {
		font-size: 14px;
	}

	.check_contents .point01_check01 {
		margin: 0 0 50px;
	}

	.check_contents .check_contents_tit span::after {
		left: -10px;
	}

	.last_lead .inner {
		font-size: 16px;
	}

	#point02 {
		padding: 50px 0 0;
	}

	#point02 .point02_check01 {
		margin: 0 0 50px;
	}

	#point02 .point_box_contents .flag_money {
		font-size: 10px;
	}

	#point02 .point_box_contents ul {
		margin: 0 auto 20px;
		width: 100%;
	}

	#point02 .point_box_contents .flag01 {
		margin: 50px auto 20px;
	}

	#point02 .point_box_contents .flag03 {
		justify-content: flex-start;
	}

	#point02 .point_box_contents .flag03 li {
		margin: 0 4% 30px 0;
	}

	#point02 .point_box_contents .flag03 li:nth-child(4n) {
		margin: 0 0 30px 0;
	}

	#point03 {
		padding: 50px 0 0;
	}

	#point03 .slick-dots {
		position: absolute;
		bottom: 0;
	}

	#point03 .point03_content01 .inner .gfx_rank {
		margin: 0 auto 100px;
	}

	#point03 .point03_check01::after {
		height: 35vw;
	}

	#point03 .point03_check01 .lead {
		font-size: 14px;
	}

	#point03 .point03_check01_ac {
		padding: 30px 0 50px;
	}

	#point04 .point_box_contents {
		padding: 50px 20px 10px;
	}

	#point04 .campaign {
		margin: 0 0 30px;
	}

	#point04 .campaign dd h4 {
		font-size: 16px;
		letter-spacing: .15em;
	}

	#point04 .campaign dd p {
		font-size: 12px;
	}

	#account_step .point_box.card h3 em {
		display: block;
		font-size: 14px;
	}

	#account_step .point_box.card .point_box_contents .point_box_lead {
		font-size: 12px;
	}

	#account_step .point_box.card .point_box_contents .point_box_lead strong {
		font-size: 16px;
		margin: 5px 0;
	}

	#account_step .point_box.card .point_box_contents .card_box {
		padding: 20px 20px;
	}

	#account_step .point_box.card .point_box_contents .card_box dt {
		margin: 0 0 15px;
	}
}


@media screen and (max-width:320px) {
	header .account_btn_wrap {
		width: 46%;
	}

	header .inner {
		padding: 5px 15px 10px;
	}

	header a.btn::after {
		display: none;
	}

	.action .cv02 dd a span::before {
		left: -60px;
	}

	.action .cv02 dd a span::after {
		width: 9px;
		right: -33px;
	}

	.link_area .link_area_tit .tit_sub span {
		font-size: 10px;
	}

	#ac-menu .label,
	#ac-menu02 .label {
		font-size: 12px;
		padding: 15px 10px;
	}

	.point .point_box .point_box_contents .low_main .flag_main dt img {
		width: 40%;
	}

	.point .point_box .point_box_contents .low_main dt {
		font-size: 16px;
	}

	.point .point_box .point_box_contents .low_main .flag_main dd {
		font-size: 50px;
	}
}

@media screen and (max-width:750px) and (min-width:500px) {

	.link_area ul li dt img {
		margin: 5px auto;
		width: 30%;
	}

	.link_area ul li dd {
		padding: 20px 0 40px;
		height: 110px;
	}
}

@media screen and (max-width:1360px) and (min-width:981px) {

	.main_visual {
		background: linear-gradient(270deg, rgb(0 32 72) 0%, rgb(0 34 75) 17%, rgb(0 19 48) 50%, rgba(0, 2, 22, 1) 100%);
	}

	.main_visual .inner-wide {
		background: url(/g/tieup_owned/kawai/img/mv_bg_pc.png) top -20px center no-repeat;
		background-size: 1000px;
		padding: 0;
	}

	.main_visual .inner1200 {
		padding: 25px 20px 5px;
		/*padding: 85px 20px 35px;*/
	}

	.main_visual .mv_txt {
		padding: 10px 0 0;
		width: 1000px;
		margin: 0 auto;
	}

	.main_visual .mv_tit,
	.main_visual .mv_sub_tit {
		padding: 0 0 0 50px;
		margin: 0 0 30px;
	}

	.main_visual .mv_img {
		padding: 0 0 0 50px;
		margin: -35px 0 30px;
	}

	.main_visual .mv_tit img,
	.mv_sub_tit img {
		width: 55%;
	}

	.main_visual .mv_img img {
		width: 45%;
	}

	.action {
		padding: 30px 0 30px;
	}
}

@media screen and (max-width:980px) and (min-width:751px) {
	.main_visual .inner-wide {
		background: url(/g/tieup_owned/kawai/img/mv_bg_pc.png) center center no-repeat;
		background-size: cover;
	}

	.main_visual .inner1200 {
		padding: 85px 20px 35px;
	}

	.main_visual .mv_tit img,
	.mv_sub_tit img {
		width: 70%;
	}
}

@media screen and (max-width:1360px) and (min-width:751px) {
	#point03 .point03_content03 {
		min-height: 800px;
	}

	#point03 .point03_content03 .slider_inner {
		width: 100%;
	}
}

@media screen and (max-width:1100px) and (min-width:751px) {

	.action .cv01 dt,
	.action .cv02 dt {
		font-size: 20px;
	}

	.point .point_box .point_box_contents {
		padding: 15px 30px 55px;
	}

	.check_contents .point01_check02 .txt .inner {
		padding: 30px 20px 0 20px;
		background: #edf1f7;
		width: 98%;
	}

	.check_contents .point01_check02 .txt dl dd {
		width: 90%;
	}

	#point03 .point03_content03 {
		min-height: 700px;
		width: 100%;
	}

	#point03 .point03_content03 .slider_main {
		width: 100%;
	}

	#point03 .point03_content03 .slide .txt {
		width: 50%;
		padding: 50px 0 0 80px;
	}

	#point03 .point03_content03 .slide .img {
		width: 50%;
	}

	#point03 .point03_content03 .slide .img img {
		width: 85%;
		margin: 0 auto;
	}

	#point03 .point03_content03 .slick-prev {
		left: 10px;
	}

	#point03 .point03_content03 .slick-next {
		right: 10px;
	}

	#point03 .point03_content03 .slide .txt .caption {
		margin: 0 0 50px;
	}
}

@media screen and (max-width:1000px) and (min-width:751px) {
	.step_container {
		width: 80%;
		margin: 50px auto 0;
	}

	.step_info .image {
		text-align: center;
	}

	#account_step .icon_step {
		top: -20px;
	}

	#account_step h2 {
		font-size: 44px;
		margin: 100px 0 30px;
	}

	#account_step h2 span {
		padding: 20px 0 0;
	}
}

@media screen and (max-width:864px) and (min-width:751px) {
	.action .cv02 dd a {
		font-size: 20px;
	}

	.point h2 {
		font-size: 50px;
	}

	.point .point_box .point_box_contents .flag_main dd {
		font-size: 96px;
	}

	.point .point_box .point_box_contents .flag_main>dt,
	.point .point_box .point_box_contents .flag_main>dd,
	.point .point_box .point_box_contents .low_main>dt,
	.point .point_box .point_box_contents .low_main>dd {
		width: 47%;
	}

	.point .point_box .point_box_contents .low_main .flag_main dd {
		font-size: 64px;
	}

	.check_tit .inner p.check_main_txt {
		padding: 30px;
	}

	#point02 .point_box_contents ul {
		width: 100%;
	}

	#point03 .point03_content03 .slide .txt .caption {
		font-size: 22px;
	}

	#point03 .point03_content03 .slide .txt .message {
		font-size: 16px;
	}

	#point03 .point03_content01 {
		padding: 0 0 70px;
	}

	#point03 .point03_check01 .lead {
		font-size: 18px;
	}

	#point04 .campaign dd h4 {
		padding: 0 30px 0 0;
	}

	#point04 .campaign dd p {
		font-size: 12px;
	}

	#point04 .point_box_contents {
		padding: 80px 30px 55px;
	}

	#account_step .point_box.card .point_box_contents {
		padding: 55px 30px 55px;
	}

	#account_step .point_box.card .point_box_contents .card_box {
		padding: 20px;
	}

	#account_step .point_box.card .point_box_contents .card_box dt {
		font-size: 20px;
	}

	#account_step .point_box.card .point_box_contents .card_box dd p {
		font-size: 12px;
	}

	#account_step .point_box.card .point_box_contents .card_box dd p strong {
		font-size: 16px;
	}
}


/*202212_add_campaign*/
.line_light_yel {
	background: linear-gradient(transparent 70%, #fef8b6 70%);
}

.camp_mv {
	background: url("/g/tieup_owned/kawai/img/camp_mv_bg.jpg") center center no-repeat;
	background-size: cover;
}

.camp_mv_wrap {
	width: 1200px;
	margin: 0 auto;
	background: url("/g/tieup_owned/kawai/img/camp_mv_bg02.png") center top no-repeat;
	background-size: contain;
	padding: 4rem 0 2rem;
}

.camp_mv_wrap .inner>p {
	text-align: center;
}

.camp_mv_txt01 {
	margin: 0 0 1.5rem;
}

.camp_mv_txt01 span {
	background: url("/g/tieup_owned/kawai/img/camp_mv_txt01.png") center center no-repeat;
	padding: 30px 50px 40px;
	background-size: cover;
	font-size: 26px;
	color: #005186;
	font-weight: 600;
}

.camp_mv_txt01 span strong {
	font-size: 1.3em;
	font-weight: 600;
	padding-top: 0.5em;
	background-position: top left 0px;
	background-repeat: repeat-x;
	background-size: 1.1em 1.1em;
	background-image: radial-gradient(0.1em 0.1em at center center, #005186 66%, #005186 66%, transparent);
}

.camp_mv_tit01 span {
	display: inline-block;
	background: linear-gradient(180deg, #fff, #fef8b6);
	background: -webkit-linear-gradient(-90deg, #fff, #fef8b6);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	font-size: 98px;
	line-height: 1.3;
	font-weight: 600;
}

.camp_mv_tit02 {
	font-size: 65px;
	color: #fef8b6;
	font-weight: 300;
	margin: 0 0 1.5rem;
}

.camp_mv_txt02 {
	font-size: 32px;
	font-weight: 600;
	margin: 0 0 6rem;
}

.camp_mv_txt02 .border-wh {
	border: 2px solid #fff;
	border-radius: 50px;
	padding: 10px 30px 10px 0;
}

.camp_mv_txt02 .camp_mv_txt02__sub {
	background: #fff;
	color: #019dc5;
	padding: 10px 20px 10px 30px;
	border-radius: 50px 0 0 50px;
}

.camp_mv_txt02 .camp_mv_txt02__main {
	color: #fff;
	padding: 0 0 0 30px;
}

.camp_mv_txt02 .camp_mv_txt02__main strong {
	color: #fef8b6;
}

.camp_mv .action {
	background: none;
}

.camp_mv_pre-cont {
	flex-wrp: wrap;
	justify-content: space-between;
	margin: 0 0 3rem;
}

.camp_mv_pre-cont li {
	width: 48%;
	background: rgba(255, 255, 255, .9);
	border: 5px solid #fff;
	box-shadow: 0px 0px 16px -6px rgba(0, 0, 0, 0.3);
	border-radius: 10px;
	padding: 60px 20px 20px;
}

.camp_mv_pre-cont li dl {
	position: relative;
}

.camp_mv_pre-cont li dl::after {
	position: absolute;
	content: "";
	display: block;
	background: url("/g/tieup_owned/kawai/img/camp_mv_present_img01.png") right top no-repeat;
	background-size: 100%;
	width: 169px;
	height: 204px;
	right: -30px;
	bottom: -56px;
	z-index: 1;
}

.camp_mv_pre-cont li:nth-of-type(2) dl::after {
	background: url("/g/tieup_owned/kawai/img/camp_mv_present_img02.png") right top no-repeat;
	background-size: 100%;
	width: 217px;
	height: 175px;
	right: -60px;
	bottom: -20px;
}

.camp_mv_pre-cont li dt {
	text-align: center;
	position: absolute;
	top: -100px;
	width: 100%;

}

.camp_mv_pre-cont li dt span.title {
	background: url("/g/tieup_owned/kawai/img/camp_mv_present_tit_bg.svg") center center no-repeat;
	height: 103px;
	background-size: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 100%;
	color: #fff;
	font-weight: 600;
	position: relative;
	padding: 15px 0;

}

.camp_mv_pre-cont li dt span.title .main {
	font-size: 32px;
	line-height: 1;
	margin-top: -4px;
}
.camp_mv_pre-cont li:nth-child(2) dt span.title .main {
	font-size: 24px;
}

.camp_mv_pre-cont li dt span.title::before {
	position: absolute;
	content: "";
	display: block;
	background: url("/g/tieup_owned/kawai/img/camp_present_icon01.png") left center no-repeat;
	background-size: 100%;
	width: 110px;
	height: 110px;
	left: -30px;
	top: 50%;
	transform: translate(0, -50%);
}

.camp_mv_pre-cont li dt span.conditions {
	font-size: 14px;
	line-height: 1;
	letter-spacing: 0.03em;
	margin-bottom: 3px;
}

.camp_mv_pre-cont li:nth-of-type(2) dt span.title::before {
	background: url("/g/tieup_owned/kawai/img/camp_present_icon02.png") left center no-repeat;
	background-size: 100%;
}

.camp_mv_pre-cont li dd {
	color: #203864;
	font-weight: 600;
	font-size: 24px;
	letter-spacing: 1px;
	line-height: 1.4;
	position: relative;
	z-index: 10;
}

.camp_mv_pre-cont li dd .underline {
	text-decoration: underline;
}

.camp_mv_pre-cont li dd small {
	font-size: 0.8em;
}

.camp_mv_pre-cont li dd strong {
	font-size: 1.2em;
}

.camp_mv_pre-cont li dd strong em {
	font-size: 1.2em;
	font-weight: 600;
}

/*エントリーフォーム*/
.camp_wrap .camp_pre02 .entry_form {
	letter-spacing: 0.04em;
}

.camp_wrap .camp_pre02 .entry_form .title {
	text-align: center;
	color: #fff;
	margin-bottom: 40px;
}

.camp_wrap .camp_pre02 .entry_form .title em {
	font-size: 30px;
	font-weight: bold;
}

.camp_wrap .camp_pre02 .entry_form .text {
	text-align: center;
	color: #fff;
	margin-bottom: 20px;
}

.camp_wrap .camp_pre02 .entry_form .attention li {
	color: #fff;
	font-size: 14px;
	text-align: center;
}

.camp_wrap .camp_pre02 .entry_form .attention li a:link,
.camp_wrap .camp_pre02 .entry_form .attention li a:visited {
	color: #fff;
	text-decoration: underline;

}

#satori__creative_container {
	width: 700px;
	margin: 20px auto;
}

.satori__custom_form {
	padding: 30px;
	font-size: 16px;
	letter-spacing: 0.04em;
}

/*サンクスページ*/
.thanks_wrap {
	font-size: 18px;
	margin-top: 40px;
	margin-bottom: 40px;
}

.thanks_wrap .title {
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 30px;
	text-align: center;
}

.thanks_wrap p {
	margin-bottom: 1em;
}

.thanks_wrap .step {
	background-color: #f5f5f5;
	padding: 15px;
	font-size: 14px;
	margin-bottom: 10px;
}

.thanks_wrap .attention {
	font-size: 14px;
}



@media screen and (max-width:1200px) {
	.camp_mv_wrap {
		width: 1000px;
	}
}

@media screen and (max-width:1000px) {
	.camp_mv_wrap {
		width: 100%;
	}

	.camp_mv_pre-cont {
		margin: 0;
	}

	.camp_mv_pre-cont li {
		width: 70%;
		margin: 0 auto 5rem;
	}

	.camp_mv_pre-cont li dl::after {
		bottom: -26px;
	}

	.camp_mv_pre-cont li dt {
		top: -110px;
		text-align: left;
	}

	.camp_mv_pre-cont li dt span {
		background-size: 80%;
		padding: 17px 0 15px 100px;
	}

	.camp_mv_pre-cont li dt span::before {
		top: 57%;
	}

	.camp_mv .action {
		padding: 0;
	}

	.camp_mv_pre-cont li dt span.title .main {
		font-size: 20px;
		line-height: 1;
		margin-top: -4px;
		padding: 5px 60px;
	}
	.camp_mv_pre-cont li:nth-child(2) dt span.title .main {
		font-size: 18px;
	}

	.camp_mv_pre-cont li dt span.title {
		height: 69px;
		background-size: 100% 100%;
		display: flex;
		flex-direction: column;
		justify-content: center;
		width: 100%;
		color: #fff;
		font-weight: 600;
		position: relative;
		padding: 15px 0;
	}

	.camp_mv_pre-cont li dt span.conditions {
		font-size: 10px;
		line-height: 1;
		letter-spacing: 0.03em;
		margin-bottom: 3px;
		padding-top: 0;
		padding-bottom: 0;
		padding-left: 60px;
	}

	.camp_mv_pre-cont li dt span.title::before {
		width: 90px;
		height: 90px;
	}


}

@media screen and (max-width:767px) {
	.camp_mv_txt01 span {
		font-size: 20px;
		background: url("/g/tieup_owned/kawai/img/camp_mv_txt01.png") center center no-repeat;
		background-size: 100%;
	}

	.camp_mv_tit01 span {
		font-size: 65px;
	}

	.camp_mv_tit02 {
		font-size: 40px;
	}

	.camp_mv_txt02 {
		font-size: 18px;
	}

	.camp_mv_txt02 .border-wh {
		padding: 10px 15px 10px 0;
	}

	.camp_mv_txt02 .camp_mv_txt02__main {
		padding: 0 0 0 10px;
	}

	.camp_mv_pre-cont li {
		width: 100%;
		padding: 50px 20px 20px;
	}

	.camp_mv_pre-cont li:nth-of-type(2) dl::after {
		right: -40px;
	}

	.camp_mv_pre-cont li dt {
		top: -90px;
	}

	.camp_mv_pre-cont li dt span {
		font-size: 24px;
	}

	.camp_mv .action .cv02 dt {
		font-size: 26px;
	}
}

.camp_wrap {
	background: rgb(0, 81, 134);
	background: linear-gradient(0deg, rgba(0, 81, 134, 1) 0%, rgba(0, 138, 189, 1) 24%, rgba(0, 177, 216, 1) 52%, rgba(0, 138, 189, 1) 72%, rgba(0, 81, 134, 1) 100%);
	padding: 8rem 0 1rem;
}

.camp_wrap h1 {
	text-align: center;
	font-size: 50px;
	color: #fff;
	position: relative;
	margin: 0 0 8rem;
}

.camp_wrap h1::before,
.camp_wrap h1::after {
	position: absolute;
	content: "";
	display: block;
	background: url("/g/tieup_owned/kawai/img/camp_tit_img.png") center center no-repeat;
	background-size: 100%;
	width: 204px;
	height: 160px;
	bottom: 0;
	left: 0;
}

.camp_wrap h1::after {
	left: inherit;
	right: 0;
	transform: scale(-1, 1);
}

.camp_wrap h1 span {
	position: relative;
}

.camp_wrap h1 span::after {
	position: absolute;
	content: "";
	display: block;
	background: url("/g/tieup_owned/kawai/img/camp_present_icon01.png") center top no-repeat;
	background-size: 100%;
	width: 120px;
	height: 120px;
	top: -150px;
	left: 50%;
	transform: translate(-50%, 0);
}

.camp_wrap .camp_pre02 h1 span::after {
	background: url("/g/tieup_owned/kawai/img/camp_present_icon02.png") center top no-repeat;
	background-size: 100%;
}

@media screen and (max-width:1000px) {
	.camp_wrap h1 {
		margin: 0 0 6rem;
	}
}

@media screen and (max-width:767px) {
	.camp_wrap {
		padding: 4rem 0 1rem;
	}

	.camp_wrap h1 {
		font-size: 36px;
		margin: 0 0 5rem;
	}

	.camp_wrap h1 span::after {
		width: 80px;
		height: 80px;
		top: -90px;
	}

	.camp_wrap h1::before,
	.camp_wrap h1::after {
		width: 110px;
		height: 90px;
	}

	/*エントリーフォーム*/
	.camp_wrap .camp_pre02 .entry_form .title {
		text-align: center;
		color: #fff;
		margin-bottom: 20px;
		font-size: 14px;
	}

	.camp_wrap .camp_pre02 .entry_form .title em {
		font-size: 19px;
		font-weight: bold;
	}

	.camp_wrap .camp_pre02 .entry_form .text {
		text-align: center;
		color: #fff;
		margin-bottom: 20px;
		font-size: 14px;
	}

	.camp_wrap .camp_pre02 .entry_form .attention li {
		color: #fff;
		font-size: 12px;
		text-align: center;
	}

	#satori__creative_container {
		width: 100%;
		margin: 20px auto;
	}

	.satori__custom_form {
		padding: 20px;
		font-size: 14px;
	}

	/*サンクスページ*/
	.thanks_wrap {
		font-size: 14px;
		margin-top: 20px;
		margin-bottom: 20px;
	}

	.thanks_wrap .title {
		font-size: 18px;
		font-weight: bold;
		margin-bottom: 30px;
		text-align: left;
	}

	.thanks_wrap p {
		margin-bottom: 1em;
	}

	.thanks_wrap .step {
		background-color: #f5f5f5;
		padding: 15px;
		font-size: 12px;
		margin-bottom: 10px;
	}

	.thanks_wrap .attention {
		font-size: 12px;
	}


}

.camp_pre01 {
	margin: 7rem 0 20rem;
}

.camp_pre__tit02 {
	color: #fff;
	font-size: 36px;
	text-align: center;
	margin: 0 0 5rem;
}

.camp_pre01__01 {
	margin: 0 0 8rem;
}

.camp_pre01__01 .movie_wrap {
	text-align: center;
	padding: 20px;
	/*border: 1px solid #fff;
	box-shadow: 0px 0px 16px -6px rgb(0 0 0 / 22%);*/
	position: relative;
}

/*.camp_pre01__01 .movie_wrap::before,
.camp_pre01__01 .movie_wrap::after {
	position: absolute;
	content: "";
	display: block;
	width: 40px;
	height: 100px;
}
.camp_pre01__01 .movie_wrap::before {
	border-top: 3px solid #fff;
	border-left: 3px solid #fff;
	left: -2px;
	top: -2px;
}
.camp_pre01__01 .movie_wrap::after {
	border-bottom: 3px solid #fff;
	border-right: 3px solid #fff;
	right: -2px;
	bottom: -2px;
}*/


.camp_pre01__02 {
	margin: 0 0 10rem;
}

.camp_pre01__02 .camp_pre01__02__img {
	width: 60%;
	margin: 0 auto;
}

.camp_pre01__02 .camp_pre01__02__desc {
	color: #fff;
	font-weight: 600;
	text-align: center;
	margin: 0 0 3rem;
}

.camp_pre__tit03 {
	text-align: center;
	color: #fff;
	margin: 0 0 3rem;
}

.camp_pre__tit03 span {
	background: url("/g/tieup_owned/kawai/img/camp_tit_bg02.png") center center no-repeat;
	background-size: 100%;
	padding: 20px 30px 30px;
	display: inline-block;
	width: 460px;
	font-size: 28px;
}

.camp_pre01__03 {
	margin: 0 0 7rem;
}

.camp_pre01__03 .camp_pre01__movie-cont {
	justify-content: space-between;
}

.camp_pre01__03 .camp_pre01__movie-cont li {
	width: 48%;
	box-shadow: 0px 0px 16px -6px rgb(0 0 0 / 22%);
	background-color: #fff;
	background-image: linear-gradient(#f6f6f6 1.5px, transparent 0), linear-gradient(90deg, #f6f6f6 1.5px, transparent 0);
	background-size: 20px 20px;
	border-radius: 30px;
	border: 10px solid #fff;
	margin: 0 0 3rem;
	padding: 15px;
	letter-spacing: 1px;
}

.camp_pre01__03 .camp_pre01__movie-cont li dt {
	color: #0090c2;
	font-size: 22px;
	font-weight: 600;
	margin: 0 0 1rem;
}

.camp_pre01__03 .camp_pre01__movie-cont li dt span {
	background: #0090c2;
	color: #fff;
	padding: 5px 10px;
	margin: 0 10px 0 0;
	font-size: 16px;
}

.camp_pre01__03 .camp_pre01__movie-cont li dd .lead {
	margin: 0 0 1rem;
	font-weight: 600;
}

.camp_pre01__04 {
	margin: 0 0 15rem;
}

.camp_pre01__04 .camp_pre01__04-wrap {
	background: #fff;
	border-radius: 30px;
	box-shadow: 0px 0px 16px -6px rgb(0 0 0 / 22%);
	padding: 0 0 50px;
}

.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-intro {
	padding: 50px;
}

.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-intro dl {
	justify-content: space-between;
}

.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-intro dt {
	width: 50%;
	letter-spacing: 1px;
}

.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-intro dd {
	width: 45%;
}

.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-intro dt .camp_pre01__04-intro-name {
	font-size: 26px;
	font-weight: 600;
	margin: 0 0 1rem;
}

.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-intro dt .camp_pre01__04-intro-sub {
	font-size: 14px;
	margin: 0 0 1rem;
	padding: 0 0 1rem;
	border-bottom: 1px solid #d2d2d2;
}

.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-intro dt .camp_pre01__04-intro-desc {
	font-size: 14px;
	text-align: justify;
}

.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-prod {
	background: #e6f4f9;
	padding: 40px;
}

.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-prod dl {
	justify-content: space-between;
	flex-direction: row-reverse;
	letter-spacing: 1px;
}

.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-prod dt {
	width: 50%;
}

.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-prod dd {
	width: 45%;
}

.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-prod dt h3 {
	font-size: 24px;
	font-weight: 600;
	margin: 0 0 1rem;
}

.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-prod dt .camp_pre01__04-prod-desc {
	margin: 0 0 2rem;
}

/* camp-link */
.camp-link {
	text-align: center;
}

.camp-link a {
	border: 1px solid #000;
	background: #fff;
	font-weight: 600;
	display: inline-block;
	padding: 15px 90px;
	transition: .3s all;
}

.camp-link a:hover {
	background: #000;
	color: #fff;
}

.camp_pre_present_wrap {
	background: #fff;
	border-radius: 30px;
	box-shadow: 0px 0px 16px -6px rgb(0 0 0 / 22%);
	padding: 30px 0 10px;
	position: relative;
	margin: 0 0 10rem;
}

.camp_pre_present_wrap::before {
	position: absolute;
	content: "";
	display: block;
	background: url("/g/tieup_owned/kawai/img/camp_present_ribbon_icon.png") center top no-repeat;
	background-size: 100%;
	width: 326px;
	height: 102px;
	top: -120px;
	left: 50%;
	transform: translate(-50%, 0);
}

.camp_pre_present_wrap .ribbon {
	text-align: center;
	margin: 0 0 1rem;
}

.camp_pre_present_wrap .ribbon span {
	background: url("/g/tieup_owned/kawai/img/camp_present_ribbon_tit_icon.png") center center no-repeat;
	background-size: 100%;
	padding: 20px 30px 30px;
	display: inline-block;
	width: 460px;
	font-size: 28px;
	color: #fff;
	font-weight: 600;
}

.camp_pre_present_wrap dl {
	text-align: center;
	padding: 0 70px;
	margin: 0 0 3rem;
}

.camp_pre_present_wrap dl dt {
	color: #203864;
	font-weight: 600;
	position: relative;
	font-size: 24px;
	margin: 0 0 2rem;
}

.camp_pre_present_wrap dl dt::before,
.camp_pre_present_wrap dl dt::after {
	position: absolute;
	content: "";
	display: block;
	border-top: 1px dashed #203864;
	width: 300px;
	height: 1px;
	top: 50%;
	transform: translate(0, -50%);
}

.camp_pre_present_wrap dl dt::before {
	left: 0;
}

.camp_pre_present_wrap dl dt::after {
	right: 0;
}

.camp_pre_present_wrap dl dd {
	letter-spacing: 1px;
}

.camp_pre_present_wrap dl dd span {
	font-weight: 600;
}

.camp_pre_present_wrap .camp-link {
	margin: 0 0 2rem;
}

.camp_wrap .camp_pre02 h1 {
	margin: 0 0 11rem;
}

@media screen and (max-width:1000px) {

	.camp_pre_present_wrap dl dt::before,
	.camp_pre_present_wrap dl dt::after {
		width: 210px;
	}

	.camp_wrap .camp_pre02 h1 {
		margin: 0 0 10rem;
	}
}

@media screen and (max-width:767px) {
	.camp_pre__tit02 {
		font-size: 24px;
		margin: 0 0 3rem
	}

	.camp_pre01 {
		margin: 7rem 0 12rem;
	}

	.camp_pre01__01 {
		margin: 0 0 6rem;
	}

	.camp_pre01__01 .movie_wrap p {
		display: block;
	}

	.camp_pre01__01 .movie_wrap iframe {
		width: 100%;
	}

	.camp_pre01__02 .camp_pre01__02__desc {
		font-size: 12px;
	}

	.camp_pre01__02 {
		margin: 0 0 5rem;
	}

	.camp_pre__tit03 span {
		width: 280px;
		font-size: 18px;
	}

	.camp_pre01__03 .camp_pre01__movie-cont li {
		width: 49%;
		margin: 0 0 1rem;
	}

	.camp_pre01__03 .camp_pre01__movie-cont li dt {
		font-size: 14px;
	}

	.camp_pre01__03 .camp_pre01__movie-cont li dt span {
		font-size: 10px;
	}

	.camp_pre01__03 .camp_pre01__movie-cont li dd {
		font-size: 12px;
	}

	.camp_pre01__03 .camp_pre01__movie-cont li dd .lead {
		font-size: 16px;
		margin: 0 0 0.5rem;
	}

	.camp_pre01__03 {
		margin: 0 0 5rem;
	}

	.camp_pre__tit03 {
		margin: 0 0 1rem;
	}

	.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-intro {
		padding: 25px;
	}

	.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-intro dt .camp_pre01__04-intro-name {
		font-size: 22px;
		margin: 0 0 0.5rem;
	}

	.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-intro dt .camp_pre01__04-intro-sub {
		font-size: 10px;
	}

	.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-intro dt .camp_pre01__04-intro-desc {
		font-size: 12px;
	}

	.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-prod dt h3 {
		font-size: 18px;
		margin: 0 0 0.5rem;
	}

	.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-prod dt .camp_pre01__04-prod-desc {
		margin: 0 0 1rem;
		font-size: 12px;
	}

	.camp-link a {
		border: 1px solid #000;
		padding: 10px 60px;
		font-size: 14px;
	}

	.camp_pre01__04 {
		margin: 0 0 10rem;
	}

	.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-prod {
		padding: 25px;
	}

	.camp_pre_present_wrap {
		margin: 0 0 5rem;
	}

	.camp_pre_present_wrap::before {
		width: 220px;
		height: 72px;
		top: -85px;
	}

	.camp_pre_present_wrap .ribbon {
		margin: 0;
	}

	.camp_pre_present_wrap .ribbon span {
		width: 300px;
		font-size: 20px;
	}

	.camp_pre_present_wrap dl {
		margin: 0 0 2rem;
	}

	.camp_pre_present_wrap dl dt {
		font-size: 18px;
		margin: 0 0 1rem;
	}

	.camp_pre_present_wrap dl dt::before,
	.camp_pre_present_wrap dl dt::after {
		width: 200px;
	}

	.camp_pre_present_wrap dl dd {
		font-size: 12px;
	}

	.camp_wrap .camp_pre02 h1 {
		margin: 0 0 8rem;
	}
}

@media screen and (max-width: 765px) {

	.camp_pre01__03 .camp_pre01__movie-cont li,
	.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-intro dt,
	.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-intro dd,
	.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-prod dt {
		width: 100%;
	}

	.camp_pre01__04 .camp_pre01__04-wrap {
		padding: 0;
	}

	.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-intro dd {
		padding: 2rem 0 0;
	}

	.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-prod {
		padding: 25px 25px 40px 25px;
		border-radius: 0 0 30px 30px;
	}

	.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-prod dt .camp_pre01__04-prod-desc {
		margin: 1rem 0 1rem;
	}
}

@media screen and (max-width: 480px) {
	.camp_mv_wrap {
		padding: 3rem 0 2rem;
	}

	.camp_mv_txt01 span {
		padding: 7px 50px 20px;
	}

	.camp_mv_txt01 span em {
		font-size: 12px;
		font-weight: 600;
	}

	.camp_mv_tit01 span {
		font-size: 34px;
	}

	.camp_mv_tit02 {
		font-size: 24px;
	}

	.camp_mv_txt02 {
		font-size: 12px;
		margin: 0 0 4rem;
	}

	.camp_mv_txt02 .border-wh {
		padding: 5px 20px 5px 0;
	}

	.camp_mv_txt02 .camp_mv_txt02__sub {
		padding: 5px 10px 5px 20px;
	}

	.camp_mv_txt02 .camp_mv_txt02__main {
		padding: 0 0 0 15px;
	}

	.camp_mv_pre-cont li {
		width: 100%;
		padding: 30px 10px 20px;
		margin: 0 auto 3rem;
	}

	.camp_mv_pre-cont li dl::after {
		width: 110px;
		height: 134px;
		right: -10px;
		bottom: -20px;
	}

	.camp_mv_pre-cont li:nth-of-type(2) dl::after {
		width: 147px;
		height: 120px;
		right: -25px;
		bottom: -20px;
	}

	.camp_mv_pre-cont li dt {
		top: -70px;
	}

	.camp_mv_pre-cont li dt span {
		font-size: 18px;
		padding: 17px 0 15px 70px;
	}

	.camp_mv_pre-cont li dt span::before {
		width: 80px;
		height: 80px;
	}

	.camp_mv_pre-cont li dd {
		font-size: 18px;
	}

	.camp_mv .action .cv02 dt {
		font-size: 16px;
	}

	.camp_wrap {
		padding: 1rem 0 1rem;
	}

	.camp_wrap h1 {
		font-size: 28px;
		margin: 0 0 2rem;
	}

	.camp_wrap h1::before,
	.camp_wrap h1::after {
		width: 70px;
		height: 120px;
	}

	.camp_wrap h1 span::after {
		width: 60px;
		height: 60px;
		top: -70px;
	}

	.camp_pre01 {
		margin: 7rem 0 10rem;
	}

	.camp_pre__tit02 {
		font-size: 20px;
		line-height: 1.6;
		margin: 0 0 1rem;
		letter-spacing: 1px;
	}

	.camp_pre01 .movie_wrap iframe {
		width: 100%;
		height: 80%;
	}

	.camp_pre01__01 .movie_wrap p {
		padding: 10px 10px 1px 10px;
	}

	.camp_pre01__01 .movie_wrap p::before,
	.camp_pre01__01 .movie_wrap p::after {
		width: 20px;
		height: 50px;
	}

	.camp_pre01__01 {
		margin: 0 0 4rem;
	}

	.camp_pre01__02 .camp_pre01__02__img {
		width: 80%;
	}

	.camp_pre__tit03 span {
		font-size: 18px;
	}

	.camp_pre01__03 .camp_pre01__movie-cont li {
		width: 100%;
		background-size: 10px 10px;
		border-radius: 20px;
		border: 5px solid #fff;
	}

	.camp_pre01__04 {
		margin: 0 0 7rem;
	}

	.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-intro dt,
	.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-prod dt {
		width: 100%;
	}

	.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-intro dd {
		width: 100%;
		padding: 2rem 0 0;
	}

	.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-prod dt .camp_pre01__04-prod-desc {
		margin: 1rem 0 1rem;
	}

	.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-intro dt .camp_pre01__04-intro-name {
		font-size: 18px;
	}

	.camp_pre01__04 .camp_pre01__04-wrap {
		padding: 0;
	}

	.camp_pre01__04 .camp_pre01__04-wrap .camp_pre01__04-prod {
		padding: 25px 25px 40px 25px;
		border-radius: 0 0 30px 30px;
	}

	.camp_pre_present_wrap {
		padding: 10px 0 1px;
		border-radius: 20px;
	}

	.camp_pre_present_wrap::before {
		width: 180px;
		height: 62px;
		top: -70px;
	}

	.camp_pre_present_wrap .ribbon span {
		width: 280px;
		font-size: 18px;
	}

	.camp_pre_present_wrap dl {
		text-align: center;
		padding: 0 15px;
	}

	.camp_pre_present_wrap dl dt {
		font-size: 16px;
	}

	.camp_pre_present_wrap dl dt::before,
	.camp_pre_present_wrap dl dt::after {
		width: 90px;
	}

	.camp_wrap .camp_pre02 h1 {
		margin: 0 0 6rem;
	}
}
