@charset "utf-8";

.cp-title-img {
	display: block;
	/*background-color: #5e370c;*/
	/*background-image: url(../images/fv_d_bg.png);*/
	background-position: center;
	background-repeat: no-repeat;
	text-align: center;
}

.cp-title-img-ab {
	display: block;
	background-color: #ffffff;
	text-align: center;
}

.cp-title-img-bottom {
	display: block;
	/*background-color: #5e370c;*/
	/*background-image: url(../images/fv_d_bottom_bg.png);*/
	background-position: center;
	background-repeat: repeat-x;
	text-align: center;
}

.cp-title-img img,
.cp-title-img-ab img,
.cp-title-img-bottom img {
	max-width: 700px;
	margin: 0 auto;
}

.entryButtonWrap {
	background-color: #ffffff;
}

.entryButtonWrap #entryButtonArea {
	max-width: 700px;
	margin: 0 auto;
}

.fixed {
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 1000;
	width: 100%;
	min-width: 300px;
}

.cp-detail {
	padding: 30px;
	background-color: #fcf7e0;
}

.cp-detail-inner {
	max-width: 700px;
	background-color: #ffffff;
	border-radius: 30px;
	margin: auto;
	padding: 46px;
}

#cp-detail-summary {
	background-color: #B97850 !important;
}

#cp-detail-summary-adv {
	background-color: #fff8e5 !important;
}

#cp-detail-btns {
	background-color: #fcf7e0 !important;
}

#cp-detail-btns-adv {
	background-color: #fff8e5 !important;
}

#cp-detail-plans-adv {
	background-color: #fff8e5 !important;
}

#cp-detail-notes {
	background-color: #B97850 !important;
}

#cp-detail-notes-adv {
	background-color: #fff8e5 !important;
}

.cp-detail-inner-plan-btn {
	max-width: 700px;
	margin: 0 auto;
}

.cp-detail-inner-plan-btn-bgcolor {
	background-color: #A8032C;
	max-width: 100%;
	margin: 0 auto;
	padding: 30px;
}

.cp-detail-inner-plan-btn-bgcolor-adv {
	background-color: #fff8e5;
	max-width: 100%;
	margin: 0 auto;
	padding: 30px;
}

.cp_btn_top.fixed {
	display: none;
	position: fixed;
	bottom: 10px;
	right: 4px;
	width: 54px;
	z-index: 1500;
	top: auto;
	left: auto;
	min-width: 0px;
	min-width: initial;
	-moz-box-shadow: 0px 0px 0px 0px;
	-webkit-box-shadow: 0px 0px 0px 0px;
	-o-box-shadow: 0px 0px 0px 0px;
	box-shadow: 0px 0px 0px 0px;
}

@media screen and (max-width: 767px) {
	.cp-detail-inner {
		padding: 10px;
	}
}

@media screen and (max-width: 375px) {
	.cp-detail {
		padding: 15px;
	}
}

/** 23/12/12追加 **/
.t_box {
	border: 1px solid #888888;
	padding: 20px;
	margin-bottom: 40px !important;
}

.t_left {
	text-align: left;
}

.w_700 {
	max-width: 700px;
	width: 94%;
	display: block;
	margin: 0 auto;
}

.t_link a:hover {
	text-decoration: underline;
}

.d_none {
	display: none;
}

.d_block {
	display: block;
}

.t_kome {
	font-size: 11px;
	text-indent: -11px;
	padding-left: 11px;
}

.t_box a {
	display: inline-block;
	padding-left: 11px;
}

/*------------240717改修------------*/
/*---animation--*/
a.entryButton._shiny:hover {
	opacity: 1;
}

._shiny {
	position: relative;
	color: #fff;
	text-decoration: none;
	overflow: hidden;
}

._shiny::before {
	position: absolute;
	content: '';
	display: inline-block;
	left: -100%;
	width: 200%;
	height: 100%;
	z-index: 9999;
	background: linear-gradient(-45deg, rgb(255, 255, 255, 0.1) 0%, rgb(255, 255, 255, 0.5) 30%, rgb(255, 255, 255, 0.2) 50%, rgb(255, 255, 255, 0.4) 75%, rgb(255, 255, 255, 0.1) 100%);
	transition: 1ms;
	animation: shinyshiny 2s linear infinite;
}

/*--fixed btn---*/
#global-nav2.text-btn a {
	display: block;
	width: 100%;
	height: 100%;
	background-color: #ed5f00;
	box-shadow: 0px -8px 0px 0px rgba(167, 66, 0, 1) inset;
	color: #fff;
	font-size: 34px;
	padding: 20px;
}

#global-nav2.text-btn a span.btn_text {
	position: relative;
}

#global-nav2.text-btn a span.btn_text:after {
	position: absolute;
	content: "";
	background-image: url("../images/btn_arrow.png");
	background-size: 36px 36px;
	width: 36px;
	height: 36px;
	right: -50px;
	top: 50%;
	transform: translateY(-50%);
}

#global-nav2.text-btn a._shiny::before {
	bottom: 0;
}

/*cp_btn_top*/
.page-index .cp_btn_top.fixed {
	bottom: 100px;
}

@media screen and (max-width:640px) {
	#global-nav2.text-btn a {
		box-shadow: 0px -1.25vw 0px 0px rgba(167, 66, 0, 1) inset;
		font-size: 5.313vw;
		padding: 3.125vw;
	}

	#global-nav2.text-btn a span.btn_text:after {
		background-size: 5.625vw 5.625vw;
		width: 5.625vw;
		height: 5.625vw;
		right: -7.812vw;
	}

	/*cp_btn_top*/
	.page-index .cp_btn_top.fixed {
		bottom: 15vw;
	}
}

/*---contents---*/
.contents-inner {
	max-width: 700px;
	margin: 0 auto;
}

/*---cp-detail-btns---*/
#cp-detail-btns .white-box {
	position: relative;
	max-width: 700px;
	background-color: #ffffff;
	border-radius: 30px;
	margin: auto;
	text-align: center;
	padding-bottom: 2%;
}

#cp-detail-btns .white-box .btn-wrap {
	background-color: #f1d6ac;
	border-radius: 30px 30px 0 0;
	padding: 30px 46px;
}

#cp-detail-btns .white-box .btn-wrap .plan-btn-01 {
	max-width: 401px;
	margin-left: auto;
	margin-right: auto;
}

#cp-detail-btns .white-box .btn-wrap .plan-btn-01 a:hover {
	opacity: 0.8;
	transition: all 0.3s;
}

.plan-link-wrap {
	padding: 30px 46px;
}

.plan-link-wrap .img-01 {
	max-width: 513px;
	margin: 0 auto;
}

.plan-link-wrap .line {
	max-width: 554px;
	margin: 30px auto;
	max-height: 6px;
}

.plan-link-wrap a {
	position: relative;
	display: inline-block;
	color: #b97850;
	font-size: 24px;
	text-decoration: underline;
	margin-top: 30px;
}

@media screen and (min-width:950px) {
	#cp-detail-btns .white-box:before {
		position: absolute;
		content: "";
		background: url("../images/");
		background-size: 80px 83px;
		width: 80px;
		height: 83px;
		top: 200px;
		left: -104px;
	}
}

@media screen and (max-width:767px) {
	#cp-detail-btns .white-box {
		max-width: 91.146vw;
		border-radius: 3.906vw;
	}

	#cp-detail-btns .white-box .btn-wrap {
		border-radius: 3.906vw 3.906vw 0 0;
		padding: 3.906vw 5.99vw;
	}

	#cp-detail-btns .white-box .btn-wrap .plan-btn-01 {
		max-width: 52.214vw;
	}

	.plan-link-wrap {
		padding: 3.906vw 5.99vw;
	}

	.plan-link-wrap .img-01 {
		max-width: 66.797vw;
	}

	.plan-link-wrap .line {
		max-width: 72.135vw;
		margin: 3.91vw auto;
		max-height: 0.781vw;
	}

	.plan-link-wrap a {
		font-size: 3.125vw;
		margin-top: 3.906vw;
	}

	.plan-link-wrap a:after {
		background-size: 3.255vw 3.255vw;
		width: 3.255vw;
		height: 3.255vw;
		right: -4.557vw;
	}
}

/*---slider---*/
#cp-detail-plans .contents-inner {
	max-width: 740px;
}

.slider-wrap-01 .slick-track {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.slider-wrap-01 .slick-slide {
	height: auto !important;
}

.slider-wrap-01 .slider_item {
	margin: 0 20px;
}

.slider-wrap-01 .slider_inner {
	background-color: #fff;
	border-radius: 20px;
	padding: 30px 10px;
	margin: 0 auto;
	width: 100%;
	height: 100%;
}

.slider-wrap-01 .slider_item .cp-flow-txt {
	padding: 0 50px;
	margin-left: auto;
	margin-right: auto;
}

.slider-wrap-01 .slick-arrow {
	transition: all 0.5s;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 10;
	width: 36px;
	height: 36px;
}

.slider-wrap-01 .slick-arrow:hover {
	cursor: pointer;
	opacity: 0.7;
}

.slider-wrap-01 .prev-arrow {
	right: 100%;
	margin-right: -38px;
}

.slider-wrap-01 .next-arrow {
	left: 100%;
	margin-left: -38px;
}

.silider-btm-txt {
	text-align: center;
	font-size: 16px;
	margin-top: 35px;
}

@media screen and (max-width: 767px) {
	.slider-wrap-01 .slider_item {
		margin: 0 2.608vw;
	}

	.slider-wrap-01 .slider_inner {
		border-radius: 2.608vw;
		padding: 3.911vw 1.304vw;
	}

	.slider-wrap-01 .slider_item .cp-flow-txt {
		padding: 0 6.519vw;
	}

	.slider-wrap-01 .slick-arrow {
		width: 4.694vw;
		height: 4.694vw;
	}

	.slider-wrap-01 .prev-arrow {
		margin-right: -4.954vw;
	}

	.slider-wrap-01 .next-arrow {
		margin-left: -4.954vw;
	}

	.silider-btm-txt {
		font-size: max(2.083vw, 14px);
		margin-top: 4.563vw;
	}
}

/*---other---*/
@media screen and (min-width: 768px) {
	.cation-style-01 {
		text-indent: -12em;
		padding-left: 12em;
	}

	.only-pc {
		display: block;
	}

	.only-sp {
		display: none;
	}
}

@media screen and (max-width: 767px) {
	.only-pc {
		display: none;
	}

	.only-sp {
		display: block;
	}
}

/*---footer---*/
.cp-ft-copyright-area {
	background-color: #fcf7e0;
}

.page-index .cp-ft-copyright-area {
	padding-bottom: 115px;
}

.page-index .cp-ft-copyright-area.w_btn_footer {
	padding-bottom: 160px;
}

@media screen and (max-width: 640px) {
	.page-index .cp-ft-copyright-area {
		padding-bottom: 18vw;
	}

	.page-index .cp-ft-copyright-area.w_btn_footer {
		padding-bottom: 21vw;
	}
}

/*241226*/
#global-nav2 span.btn_text {
	margin-left: -5vw;
	display: inline-block;
}

.kv_bnr a {
	display: inline-block;
}

.img_link:hover {
	opacity: 0.8;
	transition: all 0.3s;
}

.mt-20 {
	margin-top: 20px;
}

/*250121*/
.btn_flex_wrap {
	display: flex;
	justify-content: space-between;
	padding: 3% 0;
	width: 97%;
}

.btn_flex_wrap a:nth-child(2) {
	margin-left: 1.5%;
}

.btn_flex_wrap .entryButton {
	padding: 0;
}

#global-nav2 .btn_flex_wrap {
	padding: 1% 0;
}

#global-nav2.text-btn span.mini_font {
	display: block;
	font-size: 0.6em;
}

@media screen and (max-width: 767px) {
	#global-nav2 .btn_flex_wrap {
		padding: 2% 0;
	}
}

/* 20250326 indent */
.indent1 {
	padding-left: 1em;
	text-indent: -1em;
	line-break: strict;
}

.indent2 {
	margin-left: 1em;
	padding-left: 2em;
	text-indent: -2em;
	line-break: strict;
}

/* 20250404 plan_cp_cation */
.plan_cp_cation {
	max-width: 700px;
	margin: 4px auto 0;
	font-size: 14px;
	text-align: left;
	padding: 0 1em 0 2em;
	text-indent: -1em;
	line-break: strict;
}

/* 20240424 fv_note */
.fv_note {
	width: 96%;
	max-width: 700px;
	margin: 0 auto;
	padding: 0 16px 0;
	color: #c03;
}

/* 20250423 pl-sp ---*/
@media screen and (min-width: 768px) {
	.pl-1-sp {
		display: inline;
	}
}

@media screen and (max-width: 767px) {
	.pl-1-sp {
		display: block;
		padding-left: 1em;
	}
}

/* 20250814 docomo max cp ---*/
.dcm_max .cp-title-lev3 {
	border-left: 5px solid #A00028;
	border-bottom: unset;
	padding: 0;
	padding-left: 10px;
	font-weight: bold;
}

.bg_d_red {
	background-color: #A00028;
}

.bg_gold {
	background-color: #AF901C;
}

.bg_gold .cp-title-lev2 {
	color: #fff;
}

.bg_gold .plan-link-wrap {
	padding-top: 0;
}

.bg_gold .plan-link-wrap a {
	color: #787878;
}

.bg_gold .white-box {
	position: relative;
	max-width: 700px;
	background-color: #ffffff;
	border-radius: 30px;
	margin: auto;
	text-align: center;
	padding-bottom: 2%;
}

.bg_gold .white-box .btn-wrap {
	background-color: #ffffff;
	border-radius: 30px 30px 0 0;
	padding: 30px 46px;
}

.bg_gold .white-box .btn-wrap .plan-btn-01 {
	max-width: 401px;
	margin-left: auto;
	margin-right: auto;
}

.bg_gold .silider-btm-txt {
	color: #ffffff;
}

.mt30 {
	margin-top: 30px;
}

.plan-link-wrap .img-01.mt30_dcm_max {
	margin-top: 30px;
}

img.dcm_max_lg_01 {
	max-width: 53%;
}

img.dcm_max_lg_02 {
	max-width: 74.30%;
}

@media screen and (max-width: 767px) {
	.plan-link-wrap .img-01.mt30_dcm_max {
		margin-top: 3.906vw;
	}

	.bg_gold .white-box .btn-wrap {
		padding: 30px 25px 3.906vw 25px;
	}

	.bg_gold img {
		width: 100%;
		vertical-align: bottom;
	}

	img.dcm_max_lg_01 {
		max-width: 63%;
	}

	img.dcm_max_lg_02 {
		max-width: 88.30%;
	}
}

.dcm_max_notes {
	background-color: #f1f1f1;
}

.d_max_cp.cp-ft-copyright-area {
	background-color: #ffffff;
}

#global-nav2.d_max_entry_bt.text-btn a {
	background-color: #D11339;
	box-shadow: 0px -8px 0px 0px rgb(168,15,46) inset;
}

.dcm_max_ancl .anchorLinkItem a:before {
	background: url(../images/ico_arrow_b01_red.png) no-repeat 0 0;
}

@media screen and (max-width: 767px) {
	.dcm_max_ancl .anchorLinkItem a:before {
		width: 17px;
		height: 13px;
	}
}

@media screen and (min-width: 768px) {
	.dcm_max_ancl .anchorLinkItem a {
		padding-left: 21px;
		font-size: 14px;
	}

	.dcm_max_ancl .anchorLinkItem a:before {
		width: 16px;
		height: 12px;
	}
}

