@charset "utf-8";

/******************** 共通スタイル ********************/

img { width: 100%; height: auto; }
a { display: block; }

/* 大枠 */
.cp-wrapper {
	padding-left: 0;
	padding-top: 0;
	position: relative;
}

.cp-layout-01 {
	max-width: 640px;
	min-width: 320px;
	margin: 0 auto;
	padding: 16px;
}

/* 太字 */
.cp-contents .t-bold { font-weight: bold; }

/* サイズ */
.cp-contents .t-small { font-size: 12px !important; }

/* ボーダー枠なし */
.cp-contents .no-border { border: none; }

/* 位置 */
.cp-contents .t-left { text-align: left !important; }
.cp-contents .t-right { text-align: right !important; }
.cp-contents .t-center { text-align: center !important; }

/* テキストカラー */
.cp-contents .color-red { color: #cc0033; }

/* フォントサイズ */
.cp-contents .fs12 { font-size: 12px !important; }
.cp-contents .fs13 { font-size: 13px !important; }
.cp-contents .fs14 { font-size: 14px !important; }
.cp-contents .fs16 { font-size: 16px !important; }
.cp-contents .fs18 { font-size: 18px !important; }
.cp-contents .fs22 { font-size: 22px !important; }
.cp-contents .fs24 { font-size: 24px !important; }

/* ボタンの配置変更 */
.cp-contents .btn-left { margin-right: auto !important; }
.cp-contents .btn-right { margin-left: auto !important; }
.cp-contents .btn-center{ margin-left: auto !important; margin-right: auto !important; }


/* リスト系 共通定義 */
.cp-list-com > li {
	position: relative;
	padding-left: 1em;	/* デフォルトは全角1文字分 */
}
.cp-list-com > li:last-child { margin-bottom: 0; }
.cp-list-com > li:before {
	position: absolute;
	left: 0;
}

/* 注釈（連番なし） 専用 */
.cp-list-com.list-note > li { font-size: 12px; }
.cp-list-com.list-note > li:before { content: "\203b"; }

/* 「・」付きリスト 専用 */
.cp-list-com.list-dot > li:before { content: "\30FB"; }

/* 注釈なし連番 専用 */
.cp-list-com.list-num > li {
	counter-increment: section;
	padding-left: 4em;
}
.cp-list-com.list-num > li:before { content: "条件" counter(section) "."; }

/* 注釈あり連番 専用 */
.cp-list-com.list-numnote > li {
	font-size: 12px;
	margin-bottom: 8px;
	counter-increment: notes;
	padding-left: 2.5em;
}
.cp-list-com.list-numnote > li:before { content: "\203b" counter(notes); }

.cp-list-com strong a{
	text-decoration: underline;
}

ul.cp-list-num { margin-left: 1.8em; }
.cp-list-num > li {
	position: relative;
	counter-increment: section;
}
.cp-list-num > li:before {
	/* position: absolute; */
	content: counter(section) ".";
	margin-left: -1.8em;
	margin-right: 0.8em;
}
.cp-list-note { margin-left: 1em; }
.cp-list-note > li { position: relative; font-size: 12px; }
.cp-list-note > li:before { margin-left: -1.0em; }
.cp-list-note > li:before { content: "\203b"; }
.cp-list-note > li:last-child { margin-bottom: 0; }

/* テキストリンク */
a.cp-inline-link {
	display: inline;
	color: #0070c9;
	text-decoration: underline;
}

/* リンク無効時 */
.cp-link-disabled {
	pointer-events: none;
	cursor: default;
	opacity: 0.25;
}

/* テキストリンク（青文字+右矢印）（左矢印+青文字） */
.cp-t-r-arrow, .cp-t-l-arrow {
	color: #0070c9;
	position: relative;
	display: inline-block;
}

.cp-t-r-arrow { padding: 0 24px 0 0; }
.cp-t-l-arrow { padding: 0 0 0 24px; }

.cp-t-r-arrow:after, .cp-t-l-arrow:before {
	content: "";
	height: 24px;
	width: 24px;
	position: absolute;
	top: 50%;
	margin-top: -12px;
	background-image: url(../images/sprite_mydocomo@2x.png);
	background-repeat: no-repeat;
	background-size: 384px;
	background-position: -24px -147px;
}

.cp-t-l-arrow:before {
	left: 0;
	-webkit-transform: rotateY(180deg);
	transform: rotateY(180deg);
}

.cp-t-r-arrow:hover, .cp-t-l-arrow:hover {
	color: #0080ff;
	text-decoration: underline;
}

/* ボタンリンク */
.cp-btn-area {
	display: -webkit-flex;
	display: flex; /* IE対策 */
/*	margin: 16px 0;*/
	padding: 0 16px;
}

/* ボタン基本形 */
.cp-btn-basic {
    width: 100%;
    max-width: 290px;
    font-size: 1.0rem;
    font-weight: 600;
    display: inline-block;
    text-align: center;
    vertical-align: middle;
    padding: 1% ;
    color:  #fff;
    background-color:#0C007A;
    border-bottom: 5px solid #08004B;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    border-radius: 0.5rem;
    text-decoration: none;
    /*text-shadow:0px -1px 1px #575757;*/

}

.cp-btn-fs08 {
    font-size: 0.8rem;
    padding: 2% 4%;
}

.cp-btn-basic:hover {
	margin-top: 3px;
/*	background-color: rgba(0, 0, 0, 0.15);
	-webkit-filter: brightness(0.85);
	-moz-filter: brightness(0.85);
	-o-filter: brightness(0.85);
	-ms-filter: brightness(0.85);
	filter: brightness(0.85);*/
	border-bottom: 2px solid #6e231f;
 	opacity: 0.8 ;
}

/* ボタンリンク（青背景） */
.cp-btn-basic.strong {
	color: #fff;
	background-color: #0080ff;
}

.cp-btn-basic.strong:hover {
	background-color: #0070c9;
	-webkit-filter: brightness(0.85);
	-moz-filter: brightness(0.85);
	-o-filter: brightness(0.85);
	-ms-filter: brightness(0.85);
	filter: brightness(0.85);
}

/* アンカーリンク（青文字＋下矢印）19.02.15 追加 */
.cp-anchor-link {
	color: #0070c9;
	position: relative;
	display: inline-block;
}

.cp-anchor-link { padding: 0 24px 0 0; }

.cp-anchor-link:after {
	content: "";
	height: 24px;
	width: 24px;
	position: absolute;
	top: 50%;
	margin-top: -12px;
	background-image: url(../images/sprite_mydocomo@2x.png);
	background-repeat: no-repeat;
	background-size: 384px;
	background-position: -24px -147px;
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}

.cp-anchor-link:hover {
	color: #0080ff;
	text-decoration: underline;
}

/*************** 余白関連 ***************/

.cp-contents .mt-4 { margin-top: -4px !important; }

.cp-contents .mt0 { margin-top: 0px !important; }
.cp-contents .mt4 { margin-top: 4px !important; }
.cp-contents .mt8 { margin-top: 8px !important; }
.cp-contents .mt12 { margin-top: 12px !important; }
.cp-contents .mt16 { margin-top: 16px !important; }
.cp-contents .mt24 { margin-top: 24px !important; }
.cp-contents .mt32 { margin-top: 32px !important; }

.cp-contents .mb0 { margin-bottom: 0px !important; }
.cp-contents .mb4 { margin-bottom: 4px !important; }
.cp-contents .mb8 { margin-bottom: 8px !important; }
.cp-contents .mb12 { margin-bottom: 12px !important; }
.cp-contents .mb16 { margin-bottom: 16px !important; }
.cp-contents .mb24 { margin-bottom: 24px !important; }
.cp-contents .mb32 { margin-bottom: 32px !important; }
.cp-contents .mb72 { margin-bottom: 72px !important; }

.cp-contents .ml4 { margin-left: 4px !important; }
.cp-contents .mr4 { margin-right: 4px !important; }

.cp-contents .pd0 { padding: 0 !important; }

.cp-contents .pt0{ padding-top: 0 !important; }

.cp-contents .pb0{ padding-bottom: 0 !important; }
.cp-contents .pb8 { padding-bottom: 8px !important; }
.cp-contents .pb16 { padding-bottom: 16px !important; }
.cp-contents .pb24 { padding-bottom: 24px !important; }

.cp-contents .pr24 { padding-right: 24px; }

.cp-contents .margin-auto { margin: 0 auto; }

.cp-com-inner { padding: 0 16px 32px; }


/******************** header ***********************/

.cp-hd-inner {
	background-color: #fff;
	overflow: hidden;
	width: 100%;
}

.cp-hd {
	display: -webkit-flex;
	display: flex;
	max-width: 640px;
	min-width: 320px;
	margin: 0 auto;
	width: 100%;
	height: 59px;
	-webkit-align-items: center;
	align-items: center;
	position: relative;
	padding: 0 16px;
}

.cp-logo-mydocomo {
	width: 40px;
	margin: 0 auto;
}

.cp-logo-mydocomo img { width: 40px; }

.cp-logo-docomo img {
	width:100px;
}
.cp-logo-docomo {
    position: relative;
    top: 0;
    left: -5px;
}
/* d acount */
.cp-logo-daccount {
  position: absolute;
  top: 7px;
  right: 10px;
}
.cp-logo-daccount .logo img {
  width: auto;
}
/******************** /header ***********************/



/******************** contents **********************/

.cp-contents {
	width: 100%;
	margin: 0 auto;
	min-width: 300px;
}

/* 見出し */
.cp-title-lev1, .cp-title-lev2, .cp-title-lev3 { line-height:1.25; }

.cp-title-lev1 {
	font-size: 22px;
	text-align: center;
	padding: 48px 16px;
}
.cp-title-lev2 {
	padding: 16px;
	margin-bottom: 16px;
	text-align: center;
	font-size: 18px;
	font-weight: bold;
}

.cp-title-lev2 .img-block {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	padding-left: 8px;
	margin-left: auto;
}

.cp-title-lev3 {
	font-size: 16px;
	padding: 12px 0;
	border-bottom: 1px solid #bbb;
	margin: 0 16px 16px;
}

.cp-sec-col-block {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

/* 2列表示 */
.cp-sec-col2-inner li {
	-webkit-flex-direction: column;
	flex-direction: column;
	width: 50%;
}

/* 画像表示 */
.cp-sec-lev1 figure > img,
.cp-sec-lev2 figure > img,
.cp-sec-lev3 figure > img {
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	border: 1px solid #ddd;
}

/******************** /contents **********************/


/******************** /footer構造 ********************/
/* コピーライトエリア */
.cp-ft-copyright-area{
	color: #333;
	width: 100%;
/*	max-width: 640px; */
	min-width: 320px;
	padding:16px 0 48px;
	margin: 0 auto;
	background-color: #d1d1d1;
}

.cp-ft-copyright-area .copyright{
	font-size: 12px;
	text-align: center;
}

/* table表示（横スクロール） 19.03.14 */
.table-x-scroll {
	width: 100%;
	border-left: 1px solid #ccc;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.cp-table-block { width: 100%; }

.cp-table-block th, .cp-table-block td {
	padding: 12px 8px;
	border-top: 1px solid #ccc;
	border-right: 1px solid #ccc;
	font-size: 12px;
	text-align: center;
	min-width: 100px;
}

.cp-table-block th {
background-color: #e7e7e7;
	font-weight: bold;
	vertical-align: middle;
	white-space: nowrap;
}

.cp-table-block th:last-child, .cp-table-block td:last-child { border-right: none; }


/* 赤枠 19.03.14 */
.cp-red-tbox {
	width: 100%;
	padding: 12px;
	border: 2px solid #cc0033;
	background-color: #fff;
}

/* media query*/
.sp-other { display: none; }
.sp-only { display: block; }
.sp-tb-only { display: block; }
.pc-only { display: none; }

/* タブレット用指定 */
@media screen and (min-width: 768px) {
	.sp-only { display: none; }
	.sp-other { display: block; }
	.sp-tb-only { display: block; }
	.pc-only { display: none; }
}

/*  PC用指定 960px～max */
@media screen and (min-width: 960px) {
	.sp-only { display: none; }
	.sp-other { display: block; }
	.sp-tb-only { display: none; }
	.pc-only { display: block; }
}

/* 未エントリー */
.entry_before_button , .entry_check_button , .entry_check_label {
    font-size: 1.2rem;
    font-weight: 600;
    display: inline-block;
    text-align: center;
    vertical-align: middle;
    padding: 3% 7%;
    color: #383838;
    /* background-color: #bdb026;
    border-bottom: 5px solid #ccc100;/* ボタンの影　*/ 
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    letter-spacing: 0.1em;
    /* border-radius: 30rem; */
    text-decoration: none;
    text-shadow:0px -1px 1px #575757;
}
.entry_before_button:hover , .entry_check_label:hover ,
.entry_before_button:focus , .entry_check_label:focus , .entryButton:hover  {
	/* margin-top: 3px; */
	/* border-bottom: 2px solid #ccc100;/* ボタンの影　*/ 
 	opacity: 0.8 ;
 	-webkit-user-select: none;
 	-moz-user-select: none;
 	-ms-user-select: none;
 	user-select: none;
 	-webkit-transition: all 0.3s;
 	transition: all 0.3s;
 }

.entry_before_button:active , .entry_check_label:active {
 	opacity: 0.5 ;
 	-webkit-user-select: none;
 	-moz-user-select: none;
 	-ms-user-select: none;
 	user-select: none;
 	-webkit-transition: all 0.3s;
 	transition: all 0.3s;
}

.cp-list-com li a {
    text-decoration: none;
    font-weight: 600;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    color: #333;
    display: inline;
}

.cp-list-com li a:hover,
.cp-list-com li a:active
 {
	color:#3374da;
	text-decoration:underline;
}

/***************************** 10月cp要素追加 ****************************************/
/*アンカーリンク*/
.anchorLink {
	display: -webkit-flex;
	display: flex;
	/*padding-left: 16px;*/
	max-width: 700px;
	margin: 0 auto;
}
.anc_flex {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
.anchorLinkItem {
	margin-left: 20px;
}
.anchorLinkItem:first-child {
	margin-left: 0;
}
.anchorLinkItem a {
	position: relative;
	display: inline-block;
	padding-left: 13px;
	font-size: 12px;
	color: inherit;
	-webkit-transition: color 0.3s ease-in-out;
	-moz-transition: color 0.3s ease-in-out;
	-o-transition: color 0.3s ease-in-out;
	transition: color 0.3s ease-in-out;
}
.anchorLinkItem a:hover {
	color:#3374da;
	text-decoration:underline;
}
.anchorLinkItem a:before {
	position: absolute;
	top: 50%;
	left: -4px;
	display: inline-block;
	content: "↓";
	width: 12px;
	height: 9px;
	background: url(../images/ico_arrow_b01.png) no-repeat 0 0;
	background-size: contain;
	font-size: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

@media screen and (min-width: 768px) {
	.anchorLinkItem {
		margin-left: 40px;
	}
	.anchorLinkItem a {
		padding-left: 21px;
		font-size: 14px;
	}
	.anchorLinkItem a:before {
		width: 16px;
		height: 12px;
	}
}

@media screen and (max-width: 374px) {
	.anchorLink {
		padding-left: 6px;
	}
	.anchorLinkItem {
		margin-left: 10px;
	}
}

/*プラン変更手順*/
.cp-flow {
	padding-bottom: 20px;
}
.cp-flow-txt {
	margin-top: 10px;
}
.img-w60 {
	width: 60%;
	margin: 0 auto;
}

/* 点滅 */
.blinking{
	-webkit-animation:blink 1.5s ease-in-out infinite alternate;
    -moz-animation:blink 1.5s ease-in-out infinite alternate;
    animation:blink 1.5s ease-in-out infinite alternate;
}
@-webkit-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@-moz-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
