@charset "UTF-8";

.tone-contents {
	max-width: 920px;
	width: 100%;
	margin: auto;
}

.pc-only {
	display: initial;
}

.sp-only {
	display: none;
}

.flex {
	display: flex;
	justify-content: space-between;
}

.main-area-list {
	margin: 20px auto 0;
}

.main-area-list li {
	position: relative;
	margin: 5px 0 0 20px;
	font-size: 12px;
	text-align: justify;
	text-align-last: left;
	text-justify: inter-ideograph;
}

.main-area-list li b {
	margin: 16px 0 8px;
	display: block;
}

.main-area-list li span {
	position: absolute;
	top: 0;
	left: -22px;
}

a,
a:hover,
a:active {
	-webkit-text-decoration: none;
	text-decoration: none;
}

/* mv */
.mv .tone-contents {
	background: url(/plan/img/mv_bg.jpg) no-repeat;
	background-size: 733px 545px;
	background-position: top right;
	padding: 30px 0;
	max-width: 1280px;
}

.mv_content {
	max-width: 640px;
	width: 100%;
	margin-left: 20px;
}

.mv_ttl_sub {
	padding: 10px 0;
	margin-bottom: 10px;
	font-size: 16px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	color: #fff;
	background: #333;
}

h1.mv_ttl {
	margin: 0 auto 20px;
	font-size: 35px;
	line-height: 1.7;
	color: #333;
}

.mv_txt_box {
	background-color: rgb(255, 255, 255, 0.3);
	padding: 10px;
}

.mv_txt_box p {
	font-size: 13px;
	line-height: 2;
}

.mv_content .main-area-list {
	margin: 30px auto 0;
	font-size: 11px;
}

.mv_content .main-area-list li {
	font-size: 11px;
}

/* bnr */
.bnr {
	padding: 50px 0;
	background: #e5ecf4;
}

.bnr_1GB {
	display: block;
	max-width: 550px;
	width: 100%;
	margin: auto;
}

.bnr .main-area-list {
	max-width: 700px;
}

/* cta */
.cta {
	margin: 60px auto;
}

.entry_cta {
	position: relative;
	display: block;
	max-width: 700px;
	width: 100%;
	font-size: 24px;
	margin: 0 auto 40px;
	text-align: center;
	padding: 20px 10px 40px;
	border: 2px solid var(--primary);
	background: var(--primary);
	font-weight: bold;
	color: #FFFFFF;
	border-radius: 8px;
	transition: 0.3s ease-in-out;
	-webkit-transition: 0.3s ease-in-out;
	box-sizing: border-box;
	text-align: center;
}

.entry_cta::before,
.entry_cta::after {
	content: '';
	width: 12px;
	height: 12px;
	border-top: solid 3px #fff;
	border-right: solid 3px #fff;
	position: absolute;
	bottom: 25px;
	left: 50%;
	transform: translateY(0) translateX(-50%) rotate(135deg);
	-webkit-transform: translateY(0) translateX(-50%) rotate(135deg);
	transition: 0.5s ease-in-out;
	-webkit-transition: 0.5s ease-in-out;
}

.entry_cta::after {
	bottom: 15px;
}

.entry_cta:hover {
	color: var(--primary);
	background: #fff;
}

.entry_cta:hover::before,
.entry_cta:hover::after {
	border-color: var(--primary);
}

.share_cta_wrap {
	max-width: 480px;
	width: 100%;
	margin: 0 auto 40px;
	text-align: center;
}

.share_cta_wrap h2 {
	font-size: 20px;
	margin: 0 auto 10px;
}

.share_cta_wrap a {
	max-width: 230px;
	width: 100%;
	transition: 0.3s;
}

.share_cta_wrap a:hover {
	opacity: 0.6;
}


/* norikae */
.norikae {
	padding: 60px 0;
	background-image: linear-gradient(180deg, rgba(255, 251, 193, 1), rgba(255, 255, 255, 1));
}

.bnr_senior {
	display: block;
	max-width: 550px;
	width: 100%;
	margin: 0 auto;
}

.senior_box {
	margin: 0 auto 40px;
	padding: 40px 30px;
	background-color: #fff;
	box-shadow: 3px 3px 10px rgb(0 0 0 / 10%);
}

.senior_box .h2_box {
	margin: 30px auto 0;
	text-align: center;
}

.emp {
	width: 60%;
	position: relative;
	display: inline-block;
	font-weight: bold;
	font-size: 34px;
	margin-bottom: 15px;
	background-color: #333;
	color: #fff;
	padding: 5px 20px;
}

.break-keep-all {
	word-break: keep-all;
}

.norikae h2 {
	/* position: relative; */
	font-size: 30px;
	line-height: 1.3;
	display: flex;
	justify-content: center;
	align-items: center;
}

.norikae h2 img.light_bk_left {
	/* position: absolute;
	top: -20px;
	left: 60px; */
	width: 40px;
}

.norikae h2 img.light_bk_right {
	/* position: absolute;
	top: -20px;
	right: 60px; */
	width: 40px;
}

.norikae h2 span span {
	color: #FC356C;
}

.norikae_content01_txt {
	text-align: center;
	margin: 15px auto 0px auto;
}

.norikae_content01 {
	width: 100%;
	margin: 0 auto 10px;
	background-color: #ffffff;
	box-shadow: 3px 3px 10px rgb(0, 0, 0, 0.1);
}

.norikae_content01_wrap {
	justify-content: space-between;
	align-items: center;
	margin: 0 auto 20px;
}

.norikae_content01_txt {
	text-align: center;
	margin: 15px auto 0px auto;
}

.norikae_content01 .main-area-list {
	width: 85%;
	margin: 10px auto 40px auto;
}

.norikae .flex {
	gap: 16px;
}

.example {
	width: 90%;
	margin: 20px auto;
}

.example_contents {
	position: relative;
	max-width: 180px;
	display: flex;
	flex-direction: column;
	width: 100%;
	margin: 5px 0 32px;
	background: #ffffff;
	border-radius: 10px;
	border: none;
	text-align: center;
	box-sizing: border-box;
}

.example_imgBox {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 66px;
	height: 66px;
	margin: auto;
}

.example_txt {
	font-size: 13px;
	font-weight: 800;
}

.example_txt-blue {
	width: 100%;
	background: var(--primary);
	margin: 6px 0 0 0;
	color: #ffffff;
	height: 27px;
	padding: 5px;
	font-size: 13px;
	font-weight: 800;
	box-sizing: border-box;
}

.norikae_h3 {
	font-size: 20px;
	padding: 20px 0;
	background: #FC356C;
	border: 1px solid #FC356C;
	text-align: center;
	color: #fff;
	margin-bottom: 20px;
}

.norikae_content02 {
	justify-content: space-between;
	flex-wrap: wrap;
	padding: 0 20px;
}

.norikae_content02_box {
	width: 48%;
	margin-bottom: 40px;
	justify-content: flex-start;
	align-items: flex-start;
}

.norikae_content02_box img {
	margin: 0;
	margin-right: 20px;
}

.norikae_content02_txt h4 {
	font-size: 2px;
	color: var(--primary);
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: 1px solid var(--primary);
	text-align: left;
}

.onenorikae_ttl_wrap.flex {
	max-width: 400px;
	width: 100%;
	margin: 0 auto 40px;
	align-items: center;
}

.onenorikae_ttl_wrap img {
	margin: 0;
	margin-right: 15px;
}

h3.onenorikae_ttl {
	font-size: 39px;
}

h3.onenorikae_ttl p:first-child {
	font-size: 21px;
	margin-bottom: 10px;
}

.h3_box {
	position: relative;
	text-align: center;
	margin: 60px auto 40px;
}

.h3_box h3 {
	font-size: 32px;
}

.h3_box .cmt {
	position: absolute;
	top: 0%;
	right: -12px;
	font-size: 12px;
}

.norikaeOption_wrap {
	max-width: 445px;
	width: 100%;
	margin: 0 auto 30px;
}

.norikaeOption_wrap p {
	font-size: 24px;
	font-weight: bold;
}

.norikaeOption_wrap p:first-child {
	padding: 15px 35px;
	background: var(--primary);
	color: #fff;
}

.norikaeOption_wrap p:last-child {
	padding: 15px 45px 15px 60px;
	background: #FFFFFF 0% 0% no-repeat padding-box;
	border: 1px solid var(--primary);
	color: #333;
}

/* yasashisa */
.yasashisa {
	position: relative;
	padding: 50px 0;
}

.yasashisa .h2_ttl_sub_box {
	margin: 0 auto;
}

.yasashisa h2 {
	width: 100%;
	font-size: 30px;
	margin: 20px auto 30px;
	text-align: center;
}

.support01,
.support02,
.support03,
.support04,
.support05,
.support06,
.support07 {
	background-color: #E0F0F9;
	border-radius: 10px;
	margin: 5px;
	box-sizing: border-box;
}

.support01 {
	width: 33%;
	height: 300px;
}

.support02 {
	position: relative;
	width: 66%;
	height: 300px;
}

.support04 {
	width: 33%;
	height: 330px;
}

.support05 {
	width: 66%;
	height: 330px;
}

.support06 {
	width: 98.5%;
	margin: 5px 5px 10px 5px;
}

.support-img {
	position: absolute;
	bottom: 10px;
	right: 30px;
	width: 150px;
}

.tel-font {
	font-size: 1.6px;
	font-weight: 800;
}

.tel-font a {
	color: #333;
}

.reception-time {
	font-size: 13px;
	font-weight: 400;
}

.support-title {
	font-weight: 800;
	width: 100%;
	text-align: center;
	font-size: 23px;
	margin: 20px 0 10px 0px;
}

.support-title2 {
	font-weight: 800;
	width: 100%;
	text-align: center;
	font-size: 18px;
	margin: 15px 0 0px 0px;
}

.support-title2 .tax-included {
	padding-left: 5px;
	font-weight: 400;
	font-size: 12px;
}

.free-price {
	background-color: #ffffff;
	padding: 5px 10px;
	border: 1px solid #ED6A4E;
	color: #ED6A4E;
	width: 100px;
	text-align: center;
	font-weight: 800;
	font-size: 18px;
}

.yasashisa hr {
	width: 85%;
	color: #333333;
	margin: 15px auto 0 auto;
}

.support-comment {
	font-weight: 800;
	line-height: 1.4;
	margin: 15px 20px;
	font-size: 14px;
}

.support-comment .cvButton {
	width: 100%;
}

.support-comment .cvButton a {
	min-width: auto;
	width: 100%;
	padding: 16px;
	font-size: 12px;
}

.support02 h3 {
	margin: 0 20px 4px;
}

.support02_ttl_box {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
	margin: 20px 0;
}

.support02_ttl_box .support-title {
	margin: 0;
}

.support-tel {
	display: flex;
	align-items: center;
	gap: 8px;
	color: var(--primary);
	font-size: 24px;
	font-weight: bold;
	margin: 0 20px;
}

.support-tel img {
	width: 20px;
}

.support-comment-btn {
	width: 50%;
	margin: 40px 20px 0;
}

.cmt {
	font-size: 10px;
}

.support-btn-docomo {
	border: 2px solid #D20D24;
	background: #D20D24;
	font-weight: bold;
	color: #FFFFFF;
	margin-bottom: 15px;
}

.support-btn-docomo:hover {
	background-color: #fff;
	color: #C70000;
}

.support-btn-cta {
	border: 2px solid var(--primary);
	background: var(--primary);
	font-weight: bold;
	color: #FFFFFF;
}

.support-btn-cta:hover {
	background-color: #fff;
	color: var(--primary);
}

.support-btn-cta,
.support-btn-docomo {
	position: relative;
	display: block;
	width: 100%;
	font-size: 12px;
	box-sizing: border-box;
	padding: 10px 5px;
	border-radius: 8px;
	transition: 0.3s ease-in-out;
	-webkit-transition: 0.3s ease-in-out;
	text-align: center;
}

.support-btn-docomo {
	padding: 10px 5px 10px 20px;
}

.support-btn-cta::before,
.support-btn-docomo::before {
	content: '';
	width: 5px;
	height: 5px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	position: absolute;
	top: 50%;
	left: 8px;
	transform: translateY(-50%) translateX(-50%) rotate(45deg);
	-webkit-transform: translateY(-50%) translateX(-50%) rotate(45deg);
	transition: 0.5s ease-in-out;
	-webkit-transition: 0.5s ease-in-out;
}

.support-btn-cta:hover::before {
	border-top: solid 2px var(--primary);
	border-right: solid 2px var(--primary);
}

.support-btn-docomo:hover::before {
	border-top: solid 2px #C70000;
	border-right: solid 2px #C70000;
}

.support01 .support-title {
	margin: 22px 0 20px 0px;
}

.support01 .support-comment-wh {
	padding: 15px;
	margin: 0 auto;
	width: 60%;
	line-height: 1;
	background-color: #fff;
}

.support01 .cmt {
	font-size: 10px;
	font-weight: normal;
}

.support04 .support-comment-wh {
	font-size: 11px;
	padding: 10px;
	font-weight: 800;
	line-height: 1.5;
	background-color: #FFFFFF;
}

.support05 .support-title {
	margin-right: 5px;
}

.support05 .support-title2 {
	margin-top: 0;
}

.support05 .free-price {
	margin: 0 5px;
}

.support05 .support-comment {
	font-weight: 800;
	line-height: 1.4;
	margin: 15px;
	font-size: 12px;
	text-align: justify;
	text-align-last: left;
	text-justify: inter-ideograph;
}

.support05 .support-comment-wh {
	background-color: transparent;
	text-align: center;
	padding: 0px;
	margin: 15px 20px;
}

.support05 .support-comment-wh img {
	width: 70%;
	height: 130px;
	object-fit: cover;
	object-position: 100% 25%;
	margin: auto;
}

.kome-mark {
	font-size: 10px;
	font-weight: 400;
}

.support06 .support-title {
	margin: 10px 0 10px 0px;
}

.support06 hr {
	width: 95%;
}

.support06 .support-comment {
	font-size: 14px;
}

.support06 .support-comment2 {
	font-size: 12px;
	line-height: 1.2;
	margin: 0 10px;
	text-align: justify;
	text-align-last: left;
	text-justify: inter-ideograph;
}

.support06 .support-comment-wh {
	width: 90%;
	padding: 20px;
	margin: 25px 0 25px 5px;
}

.support06 .okudake-support-comment {
	width: 100%;
	margin: 15px 10px 15px 15px;
}

.support06 .support-comment {
	margin: 15px 10px 8px;
}

.trouble-box img {
	width: 57px;
	margin: 10px auto 20px auto;
}

.trouble-box img.even {
	width: 110%;
	margin: 10px auto 10px auto;
}

.okudake-img {
	max-width: 280px;
	width: 100%;
	padding: 20px 80px;
	margin: 10px 30px 10px 20px;
	background-color: #FFFFFF;
	box-sizing: border-box;
}

.h2_box {
	margin: 0 auto 40px;
	text-align: center;
}

/* carrier-mail */
.carrier-mail {
	padding: 0 0 40px 0;
}

.carrier-mail_content01 {
	max-width: 820px;
	width: 100%;
	margin: 0 auto 40px;
	padding: 20px 0 0 0;
	background-color: #ffffff;
	border: solid 1px #333333;
}

.carrier-mail-h2 {
	font-size: 25px;
	margin: 15px auto 25px auto;
}

.carrier-mail_content01_wrap {
	justify-content: space-between;
	align-items: center;
	margin: 0 auto 20px;
}

.carrier-mail_content01_txt {
	text-align: center;
	margin: 15px auto 20px auto;
	font-weight: 800;
	font-size: 25px;
}

.carrier-mail_content01 .main-area-list {
	width: 85%;
	margin: 10px auto 40px auto;
}

.carrier-mail-icon {
	width: 500px;
	margin: 20px auto;
}

.carrier-mail-icon p {
	width: 33%;
	text-align: center;
	font-weight: 800;
}

.carrier-mail-icon img {
	width: 100px;
}

span.underline {
	background: linear-gradient(transparent 60%, rgba(244, 222, 36, .9) 40%);
}

.carrier-mail-price {
	background-color: #F2F2F2;
	padding: 20px 40px;
	margin: 0;
	text-align: center;
}

.carrier-mail-price span {
	display: block;
	margin: 15px 0;
}

.red-font {
	color: #C70000;
	font-weight: 800;
	font-size: 15px;
}

.carrier-price {
	margin: 0 auto;
}

.carrier-price p {
	border: 0.5px solid #333333;
	padding: 5px 20px;
	text-align: center;
	background-color: #ffffff;
	font-weight: 400;
	width: 40%;
	margin: 5px;
}

/* screen */
.screen {
	text-align: center;
}

.h2_ttl_sub {
	position: relative;
	background: url(/lp/t/2022_seniorLP/img/icon_heart.svg) center no-repeat;
	background-size: contain;
	width: 140px;
	height: 120px;
	margin: 0 auto;
	z-index: 20;
	font-size: 18px;
	font-weight: 800;
	color: #ED6A4E;
	text-align: center;
	padding: 45px 0 0 0;
}

.screen h2 {
	width: 100%;
	font-size: 30px;
	margin: 20px auto 0 auto;
	text-align: center;
}

.change_screen {
	max-width: 700px;
	width: 100%;
	margin: 30px auto 0;
}

/* device */
.device {
	padding: 40px 0;
	background: #f1fbff;
	margin: 0 auto 60px;
}

.device .h2_ttl_sub_box {
	margin: 0 auto;
}

.device h2 {
	width: 100%;
	font-size: 36px;
	margin: 20px auto 40px;
	text-align: center;
}

.device_box_wrap {
	margin: 0 auto 40px;
}

.device_box {
	max-width: 459px;
	width: 100%;
	margin: auto;
}

.device_box h2 {
	margin: 0 auto 40px;
}

.device_box img {
	margin: auto;
}

.e21_device,
.e22_device {
	display: block;
	margin: 0 auto 30px;
}

.device_box img.e22_price {
	margin: 0 auto 20px;
}

.device_txt_box p.device_txt {
	margin: 10px auto 20px;
	font-weight: bold;
	font-size: 24px;
	text-align: center;
}

.device_txt_box p {
	font-size: 13px;
	text-align: left;

}

.device_txt_box p img {
	display: inline-block;
	vertical-align: bottom;
}

.e22_price {
	margin: 0 auto 22px;
}

.price_btn {
	position: relative;
	display: inline-block;
	font-size: 20px;
	font-weight: bold;
	color: var(--primary);
	padding-bottom: 4px;
	border-bottom: 1px solid var(--primary);
	transition: 0.3s all ease-out;
}

.price_btn:hover {
	opacity: 0.6;
}

.price_btn::after {
	content: "";
	position: absolute;
	top: 50%;
	left: -30px;
	transform: translate(0, -50%);
	-webkit-transform: translate(0, -50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 9px;
	border-color: transparent transparent transparent var(--primary);
}

.near-store a {
	position: relative;
	display: block;
	background: #fff;
	max-width: 400px;
	width: 100%;
	margin: 0 auto;
	padding: 18px 0;
	font-size: 16px;
	font-weight: bold;
	color: var(--primary);
	border: 2px solid var(--primary);
	box-sizing: border-box;
	text-align: center;
	transition: 0.3s ease-in-out;
	border-radius: 10px;
	-webkit-transition: 0.3s ease-in-out;
}

.near-store a::before {
	content: '';
	width: 12px;
	height: 12px;
	position: absolute;
	top: 50%;
	left: 10%;
	transform: translateY(-50%) translateX(-50%) rotate(45deg);
	-webkit-transform: translateY(-50%) translateX(-50%) rotate(45deg);
	transition: 0.3s ease-in-out;
	-webkit-transition: 0.3s ease-in-out;
	border-top: solid 3px var(--primary);
	border-right: solid 3px var(--primary);
}

.near-store a:hover {
	background: var(--primary);
	color: #fff;
}

.near-store a:hover:before {
	border-top: solid 3px #fff;
	border-right: solid 3px #fff;
}

.device_box .near-store a {
	margin: 20px auto;
}

/* 光のエフェクト */
img.new-mark {
	display: block;
	max-width: 240px;
	width: 100%;
	margin: 0 auto 15px;
}

.new-price {
	width: 90%;
	height: 42px;
	margin: 0 auto 20px auto;
	background-color: #FCE64D;
	text-align: center;
	font-weight: 800;
	font-size: 24px;
	line-height: 1.7;
}

/* 光らせるためのstyle */
.shine {
	border: 2px solid transparent;
	position: relative;
	overflow: hidden;
}

/* 光の疑似要素 */
.shine::before {
	content: "";
	animation: shine 3s cubic-bezier(0.25, 0, 0.25, 1) infinite;
	background-color: #f1fbff;
	width: 140%;
	height: 100%;
	transform: skewX(-45deg);
	top: 0;
	left: -160%;
	opacity: 0.5;
	position: absolute;
}

/* 光の動き */
@keyframes shine {
	0% {
		left: -160%;
		opacity: 0;
	}

	70% {
		left: -160%;
		opacity: 0.5;
	}

	71% {
		left: -160%;
		opacity: 1;
	}

	100% {
		left: -20%;
		opacity: 0;
	}
}

/* entry */
.entry {
	margin: 0 auto 60px;
}

.entry h2 {
	margin: 0 auto 40px;
	padding: 16px;
	color: #333;
	border-left: solid 10px var(--primary);
	background: #f2f5fa;
	font-size: 24px;
	line-height: 1.3;
}

.entry h2:last-of-type {
	margin: 60px auto 40px;
}

.entry_content {
	max-width: 800px;
	width: 100%;
	margin: auto;
	margin: 0 auto 60px;
}

.entry_content:last-child .entry_txt_box h3 {
	margin: 60px auto 5px;
}

.entry_img_box {
	width: 100%;
	margin: auto;
}

.entry_txt_box {
	margin: 0 auto 20px;
}

.entry_txt_box h3 {
	font-size: 18px;
	margin: 20px auto 5px;
	padding-bottom: 3px;
	border-bottom: 1px solid #ccc;
	line-height: 1.5;
}

.entry .support-btn-cta {
	max-width: 600px;
	padding: 20px 0 20px 41px;
	font-size: 20px;
	margin: auto;
}

.entry .support-btn-cta::before {
	content: '';
	width: 8px;
	height: 8px;
	border-top: solid 3px #fff;
	border-right: solid 3px #fff;
	position: absolute;
	top: 50%;
	left: 8%;
	transform: translateY(-50%) translateX(-50%) rotate(45deg);
	-webkit-transform: translateY(-50%) translateX(-50%) rotate(45deg);
	transition: 0.5s ease-in-out;
	-webkit-transition: 0.5s ease-in-out;
}

.entry .support-btn-cta:hover:before {
	border-top: solid 3px var(--primary);
	border-right: solid 3px var(--primary);
}

/* overview */
.overview h2 {
	position: relative;
	display: block;
	background: #fff;
	width: 100%;
	padding: 18px 0;
	font-size: 16px;
	font-weight: bold;
	color: var(--primary);
	border-top: 2px solid var(--primary);
	border-bottom: 2px solid var(--primary);
	background: #fff;
	box-sizing: border-box;
	text-align: center;
	transition: 0.3s ease-in-out;
	-webkit-transition: 0.3s ease-in-out;
	cursor: pointer;
}

.overview h2::before {
	content: '';
	width: 12px;
	height: 12px;
	position: absolute;
	top: 45%;
	right: 20px;
	transform: translateY(-50%) translateX(0) rotate(135deg);
	-webkit-transform: translateY(-50%) translateX(0) rotate(135deg);
	transition: 0.3s ease-in-out;
	-webkit-transition: 0.3s ease-in-out;
	border-top: solid 3px var(--primary);
	border-right: solid 3px var(--primary);
}

.overview h2.active::before {
	top: 55%;
	transform: translateY(-50%) translateX(0) rotate(-45deg);
	-webkit-transform: translateY(-50%) translateX(0) rotate(-45deg);
}

.overview h3 {
	font-size: 18px;
	color: #333;
	border-left: solid 10px var(--primary);
	background: #f2f5fa;
	padding: 16px;
	margin: 30px auto 20px;
}

.cp_detail h4 {
	font-weight: bold;
	font-size: 16px;
	color: #333;
	border-bottom: 2px solid #ccc;
	padding-bottom: 6px;
	margin-bottom: 10px;
}

.text-notes {
	margin: 10px auto 0;
	line-height: 1.3;
}

.qestion-q {
	font-size: 16px;
	margin-top: 40px;
	margin-bottom: 10px;
}

.qestion-a {
	background: rgb(247, 247, 247);
	padding: 20px;
	line-height: 160%;
}

.cp-att h4 {
	font-size: 16px;
	margin: 20px 0 10px;
}

:-webkit-full-page-media,
_:future,
:root a {
	text-decoration: none;
}

.cmt_wrap .tone-contents {
	width: 100%;
}

.cmt_wrap h3 {
	font-size: 16px;
	line-height: 1.3;
	margin: 20px auto 10px;
}

/* ------ シニアCM放映中 ------ */
.seniorCm {
	padding: 50px 0;
	background-color: var(--background-gray);
}

.seniorCm_Inner h2 {
	font-size: 42px;
	text-align: center;
}

.seniorCm_box {
	width: 890px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto;
	padding: 80px 0 50px;
}

.seniorCm_item {
	width: 420px;
	height: auto;
	position: relative;
}

.seniorCm_item_sub {
	position: absolute;
	top: -26px;
	left: 0;
	color: var(--white);
	background-color: var(--black);
	display: block;
	padding: 5px 8px;
}

.seniorCm_item span,
.senior-dc-cm-movie span {
	position: absolute;
	top: -22px;
	left: 70px;
	color: var(--black);
	font-size: 14px;
}


/* newContent0201 */
.newContent0201 {
	margin: 60px auto;
}

.newContent0201_docomo_ttl {
	position: relative;
	font-size: 24px;
	text-align: center;
	line-height: 1.3;
	font-weight: bold;
}

.newContent0201_docomo_ttl span.red {
	color: #C03;
}

.newContent0201_docomo_ttl span.small {
	font-size: 17px;
}

.newContent0201_android_ttl {
	margin-bottom: 10px;
	font-weight: normal;
	font-size: 24px;
	text-align: center;
}

.newContent0201_box {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 24px;
}

.newContent0201_box_txtWrapper{
	text-align: center;
}

/* ------ /シニアCM放映中 ------ */

@media screen and (max-width: 1080px) {
	.tone-contents {
		max-width: 90%;
	}

	.mv .tone-contents {
		max-width: 100%;
		background: url(/plan/img/mv_bg.jpg) right/cover no-repeat;
	}

	.mv_txt_wrap {
		background-color: rgb(255, 255, 255, 0.3);
		padding: 20px 10px;
	}

	h1.mv_ttl {
		font-size: 28px;
	}

	.mv_content {
		max-width: 495px;
		margin-left: 20px;
	}

	.mv_txt_box {
		background-color: rgb(255, 255, 255, 0);
		padding: 0;
	}

	.norikae h2 img.light_bk_right {
		right: 0;
	}

	.norikae h2 img.light_bk_left {
		left: 0;
	}
}

@media screen and (max-width: 768px) {
	body {
		font-size: 14px;
	}

	.pc-only {
		display: none;
	}

	.sp-only {
		display: initial;
	}

	.tone-contents {
		max-width: 94%;
	}

	/* mv */
	.mv {
		position: relative;
		padding: 170px 0 40px;
		z-index: 1;
	}

	.mv::after {
		content: "";
		position: absolute;
		top: 0;
		width: 100%;
		height: 100%;
		background: url(/plan/img/sp/mv_bg-sp.jpg) top /cover no-repeat;
		z-index: -1;
	}

	.mv_content {
		max-width: 100%;
		margin-left: 0;
	}

	.mv .tone-contents {
		max-width: 94%;
		background: none;
		padding: 0;
		padding: 20px 10px;
	}

	.mv_ttl_sub {
		font-size: 14px;
		padding: 5px 0;
		margin: 0 auto 15px;
	}

	h1.mv_ttl {
		font-size: 20px;
		font-size: 4.9vw;
		margin-bottom: 20px;
	}

	.mv_txt_box p {
		font-size: 12px;
		line-height: 1.3;
	}

	/* cta */
	.cta {
		margin: 30px auto;
	}

	.entry_cta {
		margin: 0 auto 20px;
	}

	.entry_cta {
		font-size: 18px;
	}

	.entry_cta::before,
	.entry_cta::after {
		content: '';
		width: 8px;
		height: 8px;
	}

	.share_cta_wrap a {
		max-width: 48%;
	}

	/* norikae */
	.norikae {
		padding: 40px 0;
	}

	.emp {
		width: 100%;
		font-size: 15px;
		margin-bottom: 15px;
		box-sizing: border-box;
	}

	.senior_box {
		padding: 30px 15px;
	}

	.norikae h2 {
		font-size: 21px;
	}

	.norikae h2 img.light_bk_left {
		display: none;
	}

	.norikae h2 img.light_bk_right {
		display: none;
	}

	.norikae_h3 {
		font-size: 17px;
		padding: 12px 0;
	}

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

	.example_contents {
		max-width: 47%;
		width: 100%;
		min-height: auto;
		margin: 0 auto;
		padding: 0;

	}

	.example_txt {
		font-size: 12px;
	}

	/* screen */
	.screen h2 {
		margin: 10px auto 20px;
		font-size: 24px;
	}

	/* yasashisa */
	.yasashisa .tone-contents {
		max-width: 94%;
	}

	.yasashisa h2 {
		margin: 10px auto 20px;
		font-size: 24px;
	}

	.anshin-support .flex {
		flex-wrap: wrap;
	}

	.support01,
	.support02,
	.support03,
	.support04,
	.support05,
	.support06,
	.support07 {
		max-width: 100%;
		width: 100%;
		height: auto;
		margin: 5px auto;
	}

	.support-comment-btn {
		width: 90%;
		margin: 0 auto 30px;
	}

	.support-btn-cta,
	.support-btn-docomo {
		width: 100%;
		margin: 10px auto;
	}

	.free-price {
		padding: 3px 8px;
		font-size: 14px;
	}

	.support-img {
		display: none;
	}

	.support05 .free-price {
		margin: 2px auto;
		display: block;
	}

	.support05 .support-comment-wh img {
		width: 120px;
		height: 210px;
	}

	.support06 {
		margin: 5px auto;
	}

	.okudake-img {
		width: 100%;
		margin: 10px auto 20px;
	}

	.fraud-prevention {
		margin: auto;
	}

	.support02_ttl_box {
		flex-direction: column;
		gap: 6px;
	}

	.support-tel {
		justify-content: center;
	}

	.support02 h3 {
		text-align: center;
	}

	/* device */
	.device {
		padding: 40px 0;
	}

	.device h2 {
		font-size: 24px;
		margin: 10px auto 30px;
	}

	.device_box_wrap {
		flex-wrap: wrap;
		margin: 0 auto 10px;
	}

	.device_box h2 img {
		max-width: 200px;
	}

	.e21_device,
	.e22_device {
		max-width: 240px;
		width: 100%;
	}

	.device_txt_box p.device_txt {
		margin-bottom: 10px;
		font-weight: bold;
		font-size: 14px;
	}

	.device_txt_box img {
		max-width: 240px;
	}

	.price_btn {
		font-size: 14px;
	}

	.near-store a::before {
		left: 5%;
	}

	.device_box {
		margin: auto;
		padding: 0;
	}

	/* entry */
	.entry_content {
		margin: 0 auto 30px;
	}

	.entry h2 {
		padding: 12px;
	}

	.entry_img_box img {
		border: 1px solid #ccc;
	}

	.entry .support-btn-cta {
		max-width: 600px;
		padding: 20px 0 20px 31px;
		font-size: 14px;
	}

	.entry .support-btn-cta::before {
		left: 10px;
	}

	.norikae_content01 {
		padding: 0 0 10px;
	}

	/* overview */
	.overview h2 {
		padding: 18px 0 18px 5px;
		text-align: left;
	}

	.overview h2::before {
		content: '';
		width: 8px;
		height: 8px;
		position: absolute;
		top: 45%;
		right: 10px;
	}

	/* ------ シニアCM放映中 ------ */
	.seniorCm_item {
		width: 100%;
	}

	.seniorCm_box {
		width: 90%;
		gap: 20px;
	}

	.seniorCm_item {
		width: 100%;
	}

	.seniorCm_item:last-child {
		margin-top: 30px;
	}

	.senior-dc-bottom iframe {
		width: 0 auto;
	}

	.senior-dc-bottom .seniorCm_item_sub {
		top: -4px;
		left: 20px;
	}

	.senior-dc-bottom span {
		left: 68px;
		position: relative;
		bottom: 5px;
	}

	/* ------ /シニアCM放映中 ------ */
}

@media screen and (max-width: 500px) {
	.mv {
		padding: 90px 0 20px;
	}

	.mv::after {
		content: "";
		position: absolute;
		top: 0;
		width: 100%;
		height: 100%;
		background: url(/plan/img/sp/mv_bg-sp.jpg) top /contain no-repeat;
		z-index: -1;
	}

	.mv .tone-contents {
		background-color: rgb(255, 255, 255, 0);
		padding: 0;
	}

	.mv_ttl_sub {
		font-size: 14px;
		padding: 5px 0;
		margin: 0 0 10px;
		width: 68%;
	}

	.mv_ttl {
		margin-bottom: 0;
	}

	h1.mv_ttl {
		font-size: 4.7vw;
	}


}
