@charset "Shift_JIS";

/*-----------------------------------------------------------------
base
-----------------------------------------------------------------*/
html,body  { }

html{font-size:87%;}
h1{ font-size:134%; }
.chkPs{ position:absolute; top:-10px; right:-63px; }
.dchkPs{ position:absolute; top:-10px; right:-58px; }
.agreeChk{ width:45%; position:absolute; top:0; right:-35px; z-index:100; }
.agreeChk2{ width:45%; position:absolute; top:-10px; right:-35px; z-index:100; }
.agreeChk2_1{ width:45%; position:absolute; top:0; right:-35px; z-index:100; }
.agreeChk2_2{ width:45%; position:absolute; top:44px; right:-35px; z-index:100; }
.agreeChk3_1{ width:45%; position:absolute; top:0; right:-35px; z-index:100; }
.agreeChk3_2{ width:45%; position:absolute; top:45px; right:-35px; z-index:100; }
.agreeTxt{ margin:0 auto; max-width:80%; display:inline-block; position:relative; }
.agreeTxt .agreeChk{ margin-top:-12px; width:auto; top:50%; right:-35px; }
.agreeTxt2 .agreeChk2{ margin-top:-12px; width:auto; top:50%; right:-35px; }
.telMail{ position:absolute; top:10px; right:5px; }
.douiTxt{ width:57%; max-width:423px;  }
.douiTxt2{ width:57%; max-width:470px; }
.douiTxt3{ width:380px;max-width: 470px; }

@media screen and (min-width: 240px) {
html{font-size:87%;}
h1{ font-size:134%; }
.chkPs{ position:absolute; top:-10px; right:-63px; }
.dchkPs{ position:absolute; top:-10px; right:-58px; }
.agreeChk{ width:35%; position:absolute; top:0; right:-45px; }
.agreeChk2{ width:50%; position:absolute; top:-10px; right:-45px; }
.agreeChk2_1{ width:35%; position:absolute; top:0; right:-45px; }
.agreeChk2_2{ width:50%; position:absolute; top:48px; right:-45px; }
.agreeChk3_1{ width:35%; position:absolute; top:0; right:-45px; }
.agreeChk3_2{ width:50%; position:absolute; top:44px; right:-45px; }
.agreeTxt{ max-width:60%; }
.agreeTxt .agreeChk{ margin-top:-12px; right:-44px; }
.agreeTxt .agreeChk img{ width:44px; height:25px; }
.agreeTxt2 .agreeChk2{ margin-top:-11px; right:-63px; }
.agreeTxt2 .agreeChk2 img{ width:63px; height:22px; }
.douiTxt{ width:100px; }
.douiTxt2{ width:120px; }
.douiTxt3{ width:88px; }
}

@media screen and (min-width: 320px) {
html{font-size:87%;}
h1{ font-size:134%; }
.chkPs{ position:absolute; top:-10px; right:-63px; }
.dchkPs{ position:absolute; top:-10px; right:-58px; }
.agreeChk{ width:35%; position:absolute; top:-7px; right:-60px; }
.agreeChk2{ width:59%; position:absolute; top:-10px; right:-60px; }
.agreeChk2_1{ width:35%; position:absolute; top:-7px; right:-60px; }
.agreeChk2_2{ width:59%; position:absolute; top:47px; right:-60px; }
.agreeChk3_1{ width:35%; position:absolute; top:-7px; right:-60px; }
.agreeChk3_2{ width:59%; position:absolute; top:44px; right:-60px; }
.agreeTxt{ max-width:65%; }
.agreeTxt .agreeChk{ margin-top:-17px; right:-55px; }
.agreeTxt .agreeChk img{ width:58px; height:34px; }
.agreeTxt2 .agreeChk2{ margin-top:-19px; right:-102px; }
.agreeTxt2 .agreeChk2 img{ width:102px; height:38px; }
.douiTxt{ width:183px; }
.douiTxt2{ width:183px; }
.douiTxt3{ width:150px; }
}

@media screen and (min-width: 360px) {
html{font-size:95%;}
h1{ font-size:134%; }
.chkPs{ position:absolute; top:-12px; right:-74px; }
.dchkPs{ position:absolute; top:-11px; right:-65px; }
.agreeChk{ width:36%; position:absolute; top:-8px; right:-70px; }
.agreeChk2{ width:62%; position:absolute; top:-10px; right:-70px; }
.agreeChk2_1{ width:36%; position:absolute; top:-7px; right:-70px; }
.agreeChk2_2{ width:62%; position:absolute; top:48px; right:-70px; }
.agreeChk3_1{ width:36%; position:absolute; top:-8px; right:-70px; }
.agreeChk3_2{ width:62%; position:absolute; top:42px; right:-70px; }
.agreeTxt{ max-width:58%; }
.agreeTxt .agreeChk{ margin-top:-20px; right:-70px; }
.agreeTxt .agreeChk img{ width:70px; height:40px; }
.agreeTxt2 .agreeChk2{ margin-top:-21px; right:-120px; }
.agreeTxt2 .agreeChk2 img{ width:119px; height:42px; }
.douiTxt{ width:200px; }
.douiTxt2{ width:200px; }
.douiTxt3{ width:173px; }
}

@media screen and (min-width: 480px) {
html{font-size:87%;}
h1{ font-size:134%; }
.chkPs{ position:absolute; top:-12px; right:-75px; }
.dchkPs{ position:absolute; top:-12px; right:-75px; }
.agreeChk{ width:40%; position:absolute; top:-11px; right:-87px; }
.agreeChk2{ width:100%; position:absolute; top:-10px; right:-87px; }
.agreeChk2_1{ width:40%; position:absolute; top:-10px; right:-87px; }
.agreeChk2_2{ width:100%; position:absolute; top:45px; right:-87px; }
.agreeChk3_1{ width:40%; position:absolute; top:-11px; right:-87px; }
.agreeChk3_2{ width:100%; position:absolute; top:38px; right:-87px; }
.agreeTxt{ max-width:70%; }
.agreeTxt .agreeChk{ margin-top:-21px; right:-69px; }
.agreeTxt .agreeChk img{ width:75px; height:42px; }
.agreeTxt2 .agreeChk2{ margin-top:-24px; right:-140px; }
.agreeTxt2 .agreeChk2 img{ width:135px; height:48px; }
.douiTxt{ width:302px; }
.douiTxt2{ width:332px; }
.douiTxt3{ width:290px; }
}

@media screen and (min-width: 640px) {
html{font-size:118%;}
h1{ font-size:150%; }
.chkPs{ position:absolute; top:-12px; right:-75px; }
.dchkPs{ position:absolute; top:-12px; right:-75px; }
.agreeChk{ position:absolute; top:-7px; right:-95px; }
.agreeChk2{ position:absolute; top:-10px; right:-95px; }
.agreeChk2_1{ position:absolute; top:-6px; right:-95px; }
.agreeChk2_2{ position:absolute; top:49px; right:-95px; }
.agreeChk3_1{ position:absolute; top:-8px; right:-100px; }
.agreeChk3_2{ position:absolute; top:43px; right:-100px; }
.agreeTxt{ max-width:76%; }
.agreeTxt2 .agreeChk2{ right:-140px; }
.telMail{ position:absolute; top:16px; right:5px; }
.douiTxt{ width:418px; }
.douiTxt2{ width:460px; }
.douiTxt3{ width:390px; }
}

@media screen and (min-width: 728px) {
html{font-size:95%;}
h1{ font-size:134%; }
.chkPs{ position:absolute; top:-12px; right:-75px; }
.dchkPs{ position:absolute; top:-12px; right:-75px; }
.agreeChk{ position:absolute; top:-11px; right:-90px; }
.agreeChk2{ position:absolute; top:-10px; right:-90px; }
.agreeChk2_1{ position:absolute; top:-11px; right:-90px; }
.agreeChk2_2{ position:absolute; top:44px; right:-90px; }
.agreeChk3_1{ position:absolute; top:-11px; right:-93px; }
.agreeChk3_2{ position:absolute; top:40px; right:-93px; }
.agreeTxt .agreeChk{ margin-top:-21px; right:-74px; }
.telMail{ position:absolute; top:10px; right:5px; }
.douiTxt{ width:342px; }
.douiTxt2{ width:375px; }
.douiTxt3{ width:310px; }
}

@media screen and (min-width: 800px) {
html{font-size:118%;}
h1{ font-size:150%; }
.chkPs{ position:absolute; top:-12px; right:-75px; }
.dchkPs{ position:absolute; top:-12px; right:-75px; }
.agreeChk{ position:absolute; top:-9px; right:-98px; }
.agreeChk2{ position:absolute; top:-10px; right:-98px; }
.agreeChk2_1{ position:absolute; top:-8px; right:-100px; }
.agreeChk2_2{ position:absolute; top:49px; right:-100px; }
.agreeChk3_1{ position:absolute; top:-8px; right:-98px; }
.agreeChk3_2{ position:absolute; top:45px; right:-98px; }
.agreeTxt{ max-width:80%; }
.telMail{ position:absolute; top:16px; right:5px; }
.douiTxt{ width:456px; }
.douiTxt2{ width:475px; }
.douiTxt3{ width:380px; }
}

body       { text-align:center; width:100%; -webkit-text-size-adjust: none;font-size:100% }

#header    { text-align:left; margin:5px 0; }
.head_line { border-bottom:solid 2px #d9d9d9;  }

#container { text-align:center; background-color:#ffffff; width:100%; }
#wrapper   { text-align:left; margin:0px auto; background-color:#ffffff; width:100%; position:relative; }
@media screen and (min-width: 768px){
	#wrapper{
		width:100%;
		max-width: 748px;
	}
}

#footer    { }

/*-----------------------------------------------------------------
Midashi
-----------------------------------------------------------------*/
h1 { background-image:url("../img/sp_h1_02.gif"),url("../img/sp_h1.jpg");
     background-repeat:no-repeat,repeat-y;
	 background-position:top left,top left;
	 background-size:12px 100%,100% 100%;
	 -webkit-background-size:12px 100%,100% 100%;
	 background-color:#f8f8f8; border:2px solid #dddddd; padding:7px 18px 9px 18px; font-weight:normal; line-height:1.3; }

.noNumber{ padding-top:12px; padding-bottom:13px; }

h2 {  background-image:url("../img/sp_h2.jpg");
     background-repeat:no-repeat;
	 background-position:bottom right;
	 background-size:100% 100%;
	 -webkit-background-size:100% 100%;
	 background-color:#ffffff; border-top:2px solid #f8d7df; border-bottom:4px solid #cc0033; padding:6px 10px 5px 10px; font-weight:normal; font-size:130%; line-height:1.3; }

h3 { background-image:url("../img/sp_h3_02.gif"),url("../img/sp_h3.jpg");
     background-repeat:no-repeat,repeat-y;
	 background-position:top left,top left;
	 background-size:15px 100%,100% 100%;
	 -webkit-background-size:15px 100%,100% 100%;
	 background-color:#f1f1f1; border-bottom:2px solid #dddddd; padding:6px 18px 6px 18px; font-weight:normal; font-size:120%; line-height:1.3; }
	 
h4 { background-color:#fafafa; border-top:2px solid #dddddd; border-bottom:2px solid #dddddd; padding:7px 10px 7px 10px; font-weight:normal; font-size:120%; line-height:1.3; }

.mds { background-color:#dddddd; border-top:2px solid #838383; border-bottom:0px solid #dddddd; padding:7px 10px 7px 10px; font-weight:normal; font-size:120%; line-height:1.4; }
.mdsTitle { background-color:#fcfcfc; border-bottom:3px solid #a3a3a3; border-top:1px solid #dddddd; padding:7px 10px 7px 10px; font-weight:normal; font-size:120%; line-height:1.4; }
.sub_mds { border-bottom: 2px solid #000000; font-size: 120%; line-height: 1.4; padding-bottom: 3px; }

.planSelect { position:absolute; top:7px; right:6px;; text-indent:-1em; }
@media screen and (min-width: 730px) {
.planSelect p{ text-align:right !important; }
}

.hNum { background-color:#cc0033; border-radius:3px; -webkit-border-radius:3px; -moz-border-radius:3px; color:#fff; padding:0px 5px; font-size:70%; vertical-align:middle; margin-right:5px; display:inline-block; margin-top:-5px; }

.nextBtn { width:100%; position:relative; }
.nextBtn .left { position:absolute; top:50%; margin-top:-0.7em; left:10px; }

.mdsP  { border-bottom:2px solid #ff91ac; font-size:120%; padding-bottom:3px; line-height:1.4; }/*線がピンクの見出し(機種変c01_2、c01_3で使用)*/
.mdsG  { border-bottom:2px solid #dedede; font-size:120%; padding-bottom:3px; line-height:1.4; }/*線がグレーの見出し(機種変c01_a1等で使用)*/
.mdsBl { border-bottom:2px solid #000000; font-size:120%; padding-bottom:3px; line-height:1.4; }/*線が黒の見出し(で使用)*/


/*-----------------------------------------------------------------
エラー用見出し
-----------------------------------------------------------------*/
.sp_err_top   { background-color:#fcf1f9; padding:10px; margin-bottom:15px; }
.sp_err_mds   { background-color:#cc0033; color:#fff; border-top:2px solid #cc0033; border-bottom:2px solid #cc0033; padding:7px 10px 7px 10px; font-weight:normal; font-size:120%; line-height:1.4; }
.sp_err_txt   { background-color:#fcf1f9; color:#cc0033; padding:10px;}
.sp_err_bdr   { border:solid 1px #cc0033!important; }
.sp_err_bdr2  { border:solid 1px #cc0033!important; }
.sp_nml_pdBox { padding-top:10px; padding-left:10px; padding-right:10px; }/*通常時　プルダウンエリア用*/
.sp_err_pdBox { padding:10px; background-color:#fcf1f9!important; }      /*エラー時プルダウンエリア用*/


/*-----------------------------------------------------------------
Icon
-----------------------------------------------------------------*/
.ico_hissu01   { background-color:#cc0033; color:#fff; padding:0px 5px; font-size:70%; vertical-align:middle; margin-left:5px; display:inline-block; margin-top:-5px; }
.ico_hissu02   { background-color:#fff; color:#cc0033; padding:0px 5px; font-size:70%; vertical-align:middle; margin-left:5px; display:inline-block; margin-top:-5px; }
.ico_service01 { background-color:#cc0033; color:#fff; padding:0px 5px; font-size:70%; vertical-align:middle; margin-left:2px; margin-right:2px; display:inline-block; margin-top:-5px; }/*オプション01 対象サービス(左右に文章がある場合)*/
.ico_service02 { background-color:#fff; color:#cc0033; padding:0px 5px; font-size:70%; vertical-align:middle; margin-left:2px; margin-right:2px; display:inline-block; margin-top:-5px; }/*オプション01 対象サービス(左右に文章がある場合・反転)*/

.ico_pc01      { background-color:#fff; color:#666; border:solid 1px #a3a3a3; padding:0px 4px; font-size:70%; vertical-align:text-top; margin-left:5px; display:inline-block; }
.ico_pc02      { background-color:#fff; color:#666; border:solid 1px #a3a3a3; padding:0px 4px; font-size:70%; vertical-align:text-top; margin-left:5px; display:inline-block; }
.ico_pc03      { background-color:#fff; color:#666; border:solid 1px #a3a3a3; padding:1px 5px; font-size:70%; vertical-align:text-top; margin-left:5px; display:inline; margin-top:-2%; }/*リンク内に改行が発生する場合*/


/*-----------------------------------------------------------------
Line
-----------------------------------------------------------------*/
hr.hr01 { border-width:3px 0px 0px 0px; border-style:solid; border-color:#ccc; height:0px; }
hr.hr02 { border-width:3px 0px 0px 0px; border-style:solid; border-color:#ccc; height:0px; margin-top:10px; }
hr.hr03 { border-width:1px 0px 0px 0px; border-style:solid; border-color:#ccc; height:0px; }
hr.hr04 { border-width:3px 0px 0px 0px; border-style:solid; border-color:#ccc; height:0px; margin:0!important; padding:0!important; }/*線の直上まで色がつく場合(sp02_1など)*/

hr.hr05 { border-width:2px 0px 0px 0px; border-style:solid; border-color:#838383; height:0px; }
div.rlbG { border-left:2px solid #838383; border-right:2px solid #838383; border-bottom:2px solid #838383; padding-bottom:30px; }

/*-----------------------------------------------------------------
Table
-----------------------------------------------------------------*/
/*tbl02のborderが上下逆転になったバージョン ＊内容確認／履歴詳細で使用*/
.tbl01    { border-bottom:solid 1px #dedede; border-left:solid 1px #dedede; }
.tbl01 th { padding:10px 10px; vertical-align:center; border-right:solid 1px #dedede; border-top:solid 1px #dedede; background-color:#f9f9f9; font-weight:bold; border-bottom:none!important;}
.tbl01 td { padding:10px 10px; vertical-align:center; border-right:solid 1px #dedede; border-top:solid 1px #dedede; border-bottom:solid 1px #dedede;}
.tbl01 th.bdT { border-top:solid 2px #dedede!important; }
.tbl01 td.bdT { border-top:solid 2px #dedede!important; }
.tbl01 th.bdTN { border-top:none!important; }
.tbl01 td.bdTN { border-top:none!important; }
.tbl01 th.bdLN { border-left:none!important; }
.tbl01 td.bdLN { border-left:none!important; }
.tbl01 th.bdRN { border-right:none!important; }
.tbl01 td.bdRN { border-right:none!important; }
.tbl01 th.bdBN { border-bottom:none!important; }
.tbl01 td.bdBN { border-bottom:none!important; }
.tbl01 th.lastChild { }
.tbl01 td.lastChild { }

.tbl02    { border-top:solid 1px #dedede; border-left:solid 1px #dedede; }
.tbl02 th { padding:5px 5px; vertical-align:center; border-right:solid 1px #dedede; border-bottom:solid 1px #dedede; background-color:#f9f9f9; font-weight:normal; }
.tbl02 td { padding:5px 5px; vertical-align:center; border-right:solid 1px #dedede; border-bottom:solid 1px #dedede; }
.tbl02 th.bdT { border-top:solid 2px #dedede; }
.tbl02 td.bdT { border-top:solid 2px #dedede; }
.tbl02 th.bdTN { border-top:none!important; }
.tbl02 td.bdTN { border-top:none!important; }
.tbl02 th.bdLN { border-left:none!important; }
.tbl02 td.bdLN { border-left:none!important; }
.tbl02 th.bdRN { border-right:none!important; }
.tbl02 td.bdRN { border-right:none!important; }
.tbl02 th.bdBN { border-bottom:none!important; }
.tbl02 td.bdBN { border-bottom:none!important; }
.tbl02 th.lastChild { }
.tbl02 td.lastChild { }

/*枠線が2pxのバージョン*/
.tbl03    { border-top:solid 2px #dedede; border-left:solid 2px #dedede; border:solid 2px #dedede; }
.tbl03 th { padding:0; vertical-align:center; border-right:solid 2px #dedede; border-bottom:solid 2px #dedede; background-color:#f9f9f9; font-weight:normal; }
.tbl03 td { padding:0; vertical-align:center; border-right:solid 2px #dedede; border-bottom:solid 2px #dedede; }
.tbl03 th.lastChild { border-bottom:none!important; }
.tbl03 td.lastChild { border-bottom:none!important; }

/*tbl02のpaddingが2pxになったバージョン ＊sp03で使用*/
.tbl04    { border-top:solid 1px #dedede; border-left:solid 1px #dedede; }
.tbl04 th { padding:2px 2px; vertical-align:center; border-right:solid 1px #dedede; border-bottom:solid 1px #dedede; background-color:#f9f9f9; font-weight:normal; }
.tbl04 td { padding:2px 2px; vertical-align:center; border-right:solid 1px #dedede; border-bottom:solid 1px #dedede; }
.tbl04 th.lastChild { }
.tbl04 td.lastChild { }

/*tbl04のborderがなしになったバージョン、TDのみpaddingの高さ5px ＊sp03、sp04の値引き表で使用*/
.tbl05    { border:none; }
.tbl05 th { padding:2px 2px; vertical-align:center; border:none; background-color:#f9f9f9; font-weight:normal; }
.tbl05 td { padding:5px 2px; vertical-align:center; border:none; }
.tbl05 th.bdT { border-top:solid 1px #dedede; }
.tbl05 td.bdT { border-top:solid 1px #dedede; }
.tbl05 th.bdL { border-left:solid 1px #f9f9f9; }
.tbl05 td.bdL { border-left:solid 1px #f9f9f9; }
.tbl05 th.bdB { border-bottom:solid 1px #dedede; }
.tbl05 td.bdB { border-bottom:solid 1px #dedede; }
.tbl05 th.lastChild { }
.tbl05 td.lastChild { }

/*sp_c01のアコーディオン内で使用*/
.tbl06    { }
.tbl06 th { padding:5px 5px; vertical-align:center; background-color:#f9f9f9; font-weight:normal; }
.tbl06 td { padding:5px 5px; vertical-align:center; }
.tbl06 th.tbl06bdT { border-top   :solid 1px #dedede; }
.tbl06 td.tbl06bdT { border-top   :solid 1px #dedede; }
.tbl06 th.tbl06bdL { border-left  :solid 1px #dedede; }
.tbl06 td.tbl06bdL { border-left  :solid 1px #dedede; }
.tbl06 th.tbl06bdR { border-right :solid 1px #dedede; }
.tbl06 td.tbl06bdR { border-right :solid 1px #dedede; }
.tbl06 th.tbl06bdB { border-bottom:solid 1px #dedede; }
.tbl06 td.tbl06bdB { border-bottom:solid 1px #dedede; }



/*ボーダーなし*/
.tbl99    { border:none; }
.tbl99 th { border:none; }
.tbl99 td { border:none; }
.tbl99 th.bdN,.tbl99 td.bdN { padding:0!important; margin:0!important; vertical-align:center; border:none;  }
.tbl99 th.bdT,.tbl99 td.bdT { border-top   :1px solid #cdcdcd; }
.tbl99 th.bdR,.tbl99 td.bdR { border-right :1px solid #cdcdcd; }
.tbl99 th.bdB,.tbl99 td.bdB { border-bottom:1px solid #cdcdcd; }
.tbl99 th.bdL,.tbl99 td.bdL { border-left  :1px solid #cdcdcd; }
.tbl99 th.bg,td.bg          { background-color:#f9f9f9; }

/*ボーダーあり*/
.tbl100    { padding:0; border-top:solid 1px #dedede; border-left:solid 1px #dedede; border:solid 1px #dedede; }
.tbl100 th { padding:0; border-right:solid 1px #dedede; border-bottom:solid 1px #dedede; }
.tbl100 td { padding:0; border-right:solid 1px #dedede; border-bottom:solid 1px #dedede; }

th.dashR, td.dashR  { border-right :dashed 1px #dedede!important; }
th.dashB, td.dashB  { border-bottom:dashed 1px #dedede!important; }

th.tblTtl { background-color:#ddd !important; border:1px solid #ccc !important; }

/*-----------------------------------------------------------------
BackGround parts
-----------------------------------------------------------------*/
.bgR  { background-color:#ffc9c9 !important; }
.bgR2 { background-color:#fcf1f9 !important; }
.bgG2 { background-color:#ececec; }
.bgBl { background-color:#333333; }
.bgG4 { background-color:#e8e8e8; }
.bgG5 { background-color:#dedede; }


.bgR2 { background-color:#fcf1f9; }
.bgRp { padding:10px; }
.bgG  { background-color:#dddddd; padding:10px; }
.bgG3 { background-color:#ececec; padding:10px; }
.bgC  { background-color:#ffffdd; padding:10px; }
.bgE  { background-color:#ffffe7 !important; }
.bgW  { background-color:#ffffff; }
.bgP  { background-color:#f794a9; }
.bgY  { background-color:#ffffe7 !important; }
.bgBu { background-color:#3f6caf; }
.bgH  { background-color:#fdf4f9; }
.bgW  { background-color:#ffffff; }
.bgW2 { background-color:#ffffff !important; }
.bgBr { background-color:#edebec !important; }
.bgYu { background-color:#ffffe7; }/*eroor color*/


/*-----------------------------------------------------------------
Text
-----------------------------------------------------------------*/
/* --- font-weight --- */
.fwB { font-weight:bold !important; }
.fwN { font-weight:normal !important; }

/* --- font size --- */
.fsXXS  { font-size: 65%; }
.fsXS   { font-size: 70%; }
.fsSS   { font-size: 83%; }
.fsS    { font-size: 90%; }
.fsM    { font-size:100%; }
.fsL    { font-size:116%; }
.fsLL   { font-size:125%; }
.fsX    { font-size:133%; }
.fsXL   { font-size:145%; }
.fsXXL  { font-size:180%; }
.fsXXXL { font-size:200%; }

.fs75p  { font-size:  75% !important; }
.fs80p  { font-size:  80% !important; }
.fs82p  { font-size:  82% !important; }
.fs85p  { font-size:  85% !important; }
.fs90p  { font-size:  90% !important; }
.fs95p  { font-size:  95% !important; }
.fs100p { font-size: 100% !important; }
.fs105p { font-size: 105% !important; }
.fs110p { font-size: 110% !important; }
.fs115p { font-size: 115% !important; }
.fs120p { font-size: 120% !important; }
.fs125p { font-size: 125% !important; }
.fs130p { font-size: 130% !important; }
.fs135p { font-size: 135% !important; }
.fs140p { font-size: 140% !important; }
.fs145p { font-size: 145% !important; }
.fs150p { font-size: 150% !important; }


/* --- font color --- */
.fcR  { color: #cc0030 !important; }
.fcG  { color: #999999 !important; }
.fcW  { color: #ffffff !important; }
.fcB  { color: #333333 !important; }
.fcB2 { color: #2a587b !important; }
.fcB3 { color: #073b9a !important; }
.fcBl { color: #000000 !important; }
.fcD  { color: #333333 !important; }/* default Color */

.lh10 { line-height:1.0!important; }
.lh11 { line-height:1.1!important; }
.lh12 { line-height:1.2!important; }/*use fsL*/
.lh13 { line-height:1.3!important; }
.lh14 { line-height:1.4!important; }
.lh15 { line-height:1.5!important; }

.lh10em { line-height:1.0em!important; }
.lh11em { line-height:1.1em!important; }
.lh12em { line-height:1.2em!important; }/*use fsL*/
.lh13em { line-height:1.3em!important; }
.lh14em { line-height:1.4em!important; }
.lh15em { line-height:1.5em!important; }


/*-----------------------------------------------------------------
Border parts
-----------------------------------------------------------------*/
.bdR1 { border:1px solid #cb0030; }
.bdT1 { border-top:2px solid #dedede; }
.bdG1 { border-bottom:2px solid #cccccc; }


/*-----------------------------------------------------------------
Nowrap
-----------------------------------------------------------------*/
.nwR { white-space: nowrap; }


/*-----------------------------------------------------------------
Text-align
-----------------------------------------------------------------*/
.taL { text-align:left; }
.taC { text-align:center; }
.taR { text-align:right; }


/*-----------------------------------------------------------------
Text-indent
-----------------------------------------------------------------*/
.tid01 { padding-left: 0.5em; text-indent: -1em; margin-bottom:2px; }
.tid02 { padding-left: 1.8em; text-indent: -1.5em; }
.tid03 { padding-left: 0.7em; text-indent: -1.1em; margin-bottom:2px; }
.tid04 { padding-left: 2.3em; text-indent: -2.3em; margin-bottom:2px; }
.tid05 { padding-left: 2em; text-indent: -2em; margin-bottom:2px; }
.tidLi li { margin-bottom:3px; }


/*-----------------------------------------------------------------
attension
-----------------------------------------------------------------*/
.att01 { padding-left: 1.0em; text-indent: -1.0em; }
.att02 { padding-left: 1.1em; text-indent: -0.7em; }/*fs90で※、※の場合*/
.att03 { padding-left: 2.0em; text-indent: -2.2em; }
.att04 { padding-left: 1.3em; text-indent: -1.4em; }
.att05 { padding-left: 2.2em; text-indent: -1.8em; }/*fs90で※1、※2などの場合*/
.attLi li { margin-bottom:3px; }


/*-----------------------------------------------------------------
SideList(DL)
-----------------------------------------------------------------*/
dl.list_side dt.sid01 { float:left; width:5.7em; clear:left; }
dl.list_side dd.sid02 { margin-left:5.7em; }


/*-----------------------------------------------------------------
borderColor
-----------------------------------------------------------------*/
.bdR { border:1px solid #cb0030; }
.bdG { border:1px solid #dedede; }
.bdP { border-top:2px solid #ff87a3 !important; border-left:2px solid #ff87a3 !important; border-right:2px solid #ff87a3 !important; }
.bdPb { border-bottom:2px solid #ff87a3 !important; }


/*-----------------------------------------------------------------
wordBreak(英数字などの折り返し用)
-----------------------------------------------------------------*/
.wbB { word-break:break-all; }


/*-----------------------------------------------------------------
アコーディオン
-----------------------------------------------------------------*/
.sp_aco_off       { border-top:2px solid #ccc; padding:10px 10px 10px 10px; background:url("../img/sp_aco_bg_off.gif") bottom left repeat-x #ffffff; }
.sp_aco_on        { border-top:2px solid #ccc; padding:10px 10px 10px 10px; background:url("../img/sp_aco_bg_on.gif") bottom left repeat-x #f5f5f5; }
.sp_aco02         { border:2px solid #ccc; padding:10px 10px 10px 10px; }
.sp_aco_b         { border-bottom:2px solid #ccc; margin-bottom:10px; }
.sp_acoIn         { background-color:#e8e8e8; }
.sp_acoIn_ttl_on  { border-top:2px solid #ccc; border-left:2px solid #ccc; border-right:2px solid #ccc; background-color:#d8d7db; padding:10px 10px 10px 10px; }
.sp_acoIn_ttl_off { border-top:2px solid #ccc; border-left:2px solid #ccc; border-right:2px solid #ccc; background-color:#f3f3f3; padding:10px 10px 10px 10px; }
.sp_acoIn_ttlB    { border-bottom:2px solid #ccc; background-color:#fff; }
.sp_acoIn_con     { border-left:2px solid #ccc; border-right:2px solid #ccc; background-color:#d8d7db; padding:5px; }
.sp_acoIn_con_mds { border-bottom:1px solid #d3d3d3; font-size:110%; }
.sp_acoIn_con_tab { background-color:#fff; padding:10px 0 0 0; }

 
/*-----------------------------------------------------------------
角丸ラジオボタンタブ
-----------------------------------------------------------------*/
.tabBtn {
	border:1px solid #c4c4c4;
	border-radius:3px;
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
	padding:8px 4px 8px 8px;
	background-color:#ececec;
}

.tabBtn_chk {
	border:1px solid #cc0033;
	border-radius:3px;
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
	padding:8px 4px 8px 8px;
	background:url("../img/sp_tabbtn_bg.jpg") top left repeat-x;
	background-size:100% 100%;
}

.tabBtnDisabled {
	border:1px solid #c4c4c4;
	border-radius:3px;
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
	padding:8px 4px 8px 8px;
	background-color:#bababa;
}

/*-----------------------------------------------------------------
Input
-----------------------------------------------------------------*/
input ,select{ vertical-align:middle; }
input {  }
.bgTextW { background-color:#feffff; }
.indispensable { background-color:#ffc9c9; }
.indispensable2 { background-color:#f4cece; }
.indispensable3 { background-color:#feffff; }
.bgYu { background-color:#ffffe7; }/*eroor color*/
.indispensableDeny { background-color:#ffffff; }
label { margin:0 0; }

input[type="button"],input[type="text"],input[type="file"], textarea { padding: 2px; font-size:10 0%; line-height:1.0; }
.disb { background-color:#d4d0c8; color:#999999; }

/*input.txtfield { border: 1px solid #C9C9C9; font-size: 16px; height: 22px; line-height: 24px; margin-right: 2px; padding: 4px 2px; }*//*テキスト入力ボックスの高さやフォントサイズを指定*/
input.txtfield { border: 1px solid #C9C9C9; font-size: 14px; height: 22px; line-height: 17px; margin-right: 2px; padding: 4px 2px; }/*テキスト入力ボックスの高さやフォントサイズを指定*/
select.opfield  { font-size: 16px; height: 34px; line-height: 16px; margin-right: 2px; padding: 0px 2px; }/*プルダウンの高さやフォントサイズを指定*/
select.opfield2 { font-size: 16px; height: 34px; line-height: 16px; margin-right: 2px; padding: 0px 2px; }/*プルダウンの高さやフォントサイズを指定*/

input.phFcD::-webkit-input-placeholder { color: #333333; }/*placeholderでの色変更クラス*/
input.phFcD:-moz-placeholder { color: #333333; }/*placeholderでの色変更クラス*/


.chk{ position:relative; padding:0px!important; }
.douiArea { margin-top:10px; padding:6px 10px 6px 5px; }
input[type="checkbox"] { margin:0; padding:0; position: absolute; top:0px; left:2px; opacity:0; }
input[type="checkbox"]+label          { background:url("../img/checkbox.png") 0 0 no-repeat; background-size:22px 22px; display:inline-block; padding:1px 0px 7px 27px; font-size:110%; line-height:1.0 ;vertical-align:text-top; }/*125%→110% line-height1.2→1.4 pt1→pt2*/
input[type="checkbox"]:checked+label  { background:url("../img/checkbox-checked.png") 0 0 no-repeat; background-size:22px 22px; }
input[type="checkbox"]:disabled+label { background:url("../img/checkbox-disabled.png") 0 0 no-repeat; background-size:22px 22px; }
.chkDis { background:url("../img/checkbox-check_dis.png") 0 0 no-repeat !important; background-size:22px 22px !important; }
.douiEx input[type="checkbox"]+label          { background:url("../img/checkbox.png") 0 center no-repeat; background-size:22px 22px; display:inline-block; padding:0px 0px 0px 27px; font-size:110%; line-height:1.0;vertical-align:middle; min-height:22px; }
.douiEx input[type="checkbox"]:checked+label  { background:url("../img/checkbox-checked.png") 0 center no-repeat; background-size:22px 22px; min-height:22px; }
.douiEx input[type="checkbox"]:disabled+label { background:url("../img/checkbox-disabled.png") 0 center no-repeat; background-size:22px 22px; min-height:22px; }

.rdo{ position:relative; padding:0px!important; }
input[type="radio"] { margin:0; padding:0; position: absolute; top:0px; left:2px; opacity:0; }
input[type="radio"]+label          { background:url("../img/radio.png") 0 0 no-repeat; background-size:22px 22px; display:inline-block; padding:0px 0px 7px 27px; font-size:110%; line-height:1.0; ;vertical-align:text-top; }/*125%→110% line-height1.2→1.4 pt1→pt2*/
input[type="radio"]:checked+label  { background:url("../img/radio-checked.png") 0 0 no-repeat; background-size:22px 22px; }
input[type="radio"]:disabled+label { background:url("../img/radio-disabled.png") 0 0 no-repeat; background-size:22px 22px; }
.rdoDis { background:url("../img/radio-check_dis.png") 0 0 no-repeat !important; background-size:22px 22px !important; }


/*-----------------------------------------------------------------
角丸枠
-----------------------------------------------------------------*/
.rdBdG {
	border:1px solid #dfdfdf;
	border-radius:3px;
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
	padding:8px;
	background-color:#fff;
}  

/*？アイコンのフキダシ用*/
.rdBdBlow {
	border:1px solid #9f9f9f;
	border-radius:3px;
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
	padding:8px;
	background-color:#fff;
	width:60%;
	margin:-1px auto 0;
	text-align:left;
}

/*機種変更のドコモダケ横の枠*/
.rdBdY {
	border:2px solid #ffc033;
	border-radius:3px;
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
	padding:8px;
	background-color:#ffffe7;
}  

/*機種変更の01a等で使用の枠*/
.rdBdP {
	border:2px solid #df0f43;
	border-radius:3px;
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
	padding:8px;
	background-color:#ffffe7;
}  



/*-----------------------------------------------------------------
sp02_ご確認事項内部
-----------------------------------------------------------------*/
/*通常時*/
.sp_psAco_bdr  { border-top:2px solid #dedede; border-left:2px solid #dedede; border-right:2px solid #dedede; }
.sp_psAco_ttl  { border-right:2px solid #dedede; padding-right:10px; position:relative; } 
.sp_psAco_line { border-top:2px solid #dedede; } 

.sp_psAco_inner     { border-right:2px solid #f8f8f8; background-color:#fff; }
.sp_psAco_inner_ttl {
	background-image:url("../img/sp02_bg_acoin.gif");
	background-position:top left;
	background-size:auto 100%;
	-webkit-background-size:auto 100%;
	background-color:#ffffff;
	padding:5px 10px 3px; 
}

/*STEP2のサイドバーありの場合*/
.sp_psAco_bdrP   { border-top:2px solid #FE87A3; border-left:2px solid #FE87A3; border-right:2px solid #FE87A3; }/*ピンク枠*/
.sp_psAco_bdrP2  { border-top:none; border-left:2px solid #FE87A3; border-right:2px solid #FE87A3; }/*ピンク枠・サイドのみ*/
.sp_psAco_bdrB   { border-top:2px solid #3F6CAF; border-left:2px solid #3F6CAF; border-right:2px solid #3F6CAF; }/*ブルー枠*/
.sp_psAco_bdrB2  { border-top:none; border-left:2px solid #3F6CAF; border-right:2px solid #3F6CAF; }/*ブルー枠・サイドのみ*/
.sp_psAco_l_barP { background-color:#FE87A3; color:#fff; text-align:center; padding-top:5px; }
.sp_psAco_l_barB { background-color:#3F6CAF; color:#fff; text-align:center; padding-top:5px; }
.sp_psAco_r_cont { border:2px solid #dedede; padding:5px 5px 0 0; margin:5px; }
.sp_psAco_r_cont2{ border:2px solid #dedede; padding:5px 0px 0 0; margin:5px; }/*sp_c01_c2のケータイ補償お届けサービスで使用(右側にまで白背景が入り込むための設定)*/

/*下線*/
.sp_psAco_bottom  { border-bottom:2px solid #dedede; }/*通常時*/
.sp_psAco_bottomP { border-bottom:2px solid #FE87A3; }/*ピンク*/
.sp_psAco_bottomB { border-bottom:2px solid #3F6CAF; }/*ブルー*/

/*枠線 ※sp02_2のデータ量到達 通知サービスで使用*/
.sp_psAco_inBdr { border:2px solid #dedede; padding:5px; margin-left:10px; margin-bottom:10px; }

/*あんしんパック、おすすめパックの下のグレー線が横のBorderに飛び出さないための処置*/
.sp_psAco_bdrPtop { background-image:url("../img/sp_bg_p.gif"),url("../img/sp_bg_p.gif");
     background-repeat:no-repeat,no-repeat;
	 background-position:top left,top right;
	 background-size:2px 2px,2px 2px;
	 -webkit-background-size:2px 2px,2px 2px;
	 background-color:#dedede; height:2px; font-size:1%; line-height:0; margin:0; padding:0; }

.sp_psAco_bdrBtop { background-image:url("../img/sp_bg_b.gif"),url("../img/sp_bg_b.gif");
     background-repeat:no-repeat,no-repeat;
	 background-position:top left,top right;
	 background-size:2px 2px,2px 2px;
	 -webkit-background-size:2px 2px,2px 2px;
	 background-color:#dedede; height:2px; font-size:1%; line-height:0; margin:0; padding:0; }


/*-----------------------------------------------------------------
vertical-align
-----------------------------------------------------------------*/
.vaT { vertical-align:top !important; }
.vaM { vertical-align:middle !important; }
.vaB { vertical-align:bottom !important; }
.vai { vertical-align:inherit !important; }
.vaTt { vertical-align:text-top !important; }


/*-----------------------------------------------------------------
Float
-----------------------------------------------------------------*/
.flL { float:left; }
.flR { float:right; }


/*-----------------------------------------------------------------
Font Decoration
-----------------------------------------------------------------*/
.fdU { text-decoration:underline; }
.fdN { text-decoration:none!important; }


/*-----------------------------------------------------------------
display
-----------------------------------------------------------------*/
.diN  { display:none; }
.diB  { display:block; }
.diI  { display:inline; }
.diIb { display:inline-block; }


/*-----------------------------------------------------------------
visibility
-----------------------------------------------------------------*/
.viH { visibility:hidden; }


/*-----------------------------------------------------------------
height
-----------------------------------------------------------------*/
.hgA { height:auto!important; }


/*-----------------------------------------------------------------
中黒のUL
-----------------------------------------------------------------*/
ul.nkg      { margin:0 0 0 0; padding-left:18px; }
ul.nkg li   { list-style: disc; margin-bottom:3px; }


/*-----------------------------------------------------------------
郵便番号から住所検索・電話番号から住所検索
-----------------------------------------------------------------*/
#search {
	border:1px solid #c4c4c4;
	border-radius:3px;
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
	padding:15px 0;
	margin:10px 10px;
	background-color:#fff;
	text-align:left;
}  


/*-----------------------------------------------------------------
FAQ
-----------------------------------------------------------------*/
.faqBox { width:100%; height:100%; }
#faq { background-image:url("../img/sp_faq_bg01.gif"),url("../img/sp_faq_bg03.gif"),url("../img/sp_faq_bg02.gif");
	background-repeat:no-repeat,no-repeat,repeat-y;
	background-position:top left,bottom left,top left;
	background-size:100% auto,100% auto,100% 100%;
	-webkit-background-size:100% auto,100% auto,100% 100%;
	background-color:#ffffff; padding:5px 10px 10px;
	margin:10px 10px;
	text-align:left;
	position:relative;
	height:auto;
}
#faq .faqMds { font-size:120%; font-weight:bold; }
#faq .faqClose  { text-align:center; margin-top:20px; margin-bottom:10px; padding-left:10px; padding-right:10px;}
#faq .faqCloseBtn { position:absolute; top:10px; right:20px; }
#faq .faqLine01 { border-bottom:3px solid #dedede; padding-bottom:3px; }
#faq .faqLine02 { border-bottom:1px solid #dedede; padding-bottom:3px; padding-top:3px; }


/*-----------------------------------------------------------------
リンクアイコン
-----------------------------------------------------------------*/

/*ポップアップ*/
a.ico_link01{
	background:url("../img/sp_a_link.gif") no-repeat left center;
	background-size:15px;
	padding-bottom:4px;
	padding-left:20px;
}
/*次へ遷移*/
a.ico_link02{
	background:url("../img/sp_a_next.gif") no-repeat left center;
	background-size:18px;
	padding-bottom:2px;
	padding-left:20px;
}
/*戻る遷移*/
a.ico_link04{
	background:url("../img/sp_a_back.gif") no-repeat left center;
	background-size:18px;
	padding-bottom:2px;
	padding-left:20px;
}
/*-----------------------------------------------------------------
リンクアイコンのスマホタテヨコ時設定
-----------------------------------------------------------------*/

/*縦向き*/
@media all and (orientation: portrait) { 
    img.linkIcon {
       width:12px; padding-bottom:4px; padding-right:2px;
    } 
    img.linkIcon2 {
       width:18px; padding-bottom:4px; padding-right:2px;
    } 
    img.linkIcon3 {
       width:18px; padding-bottom:4px; padding-left:5px;
    } 
    img.linkIcon4 {
       width:18px; padding-bottom:4px; padding-left:0px;
    } 
    img.linkIcon5 {
       width:18px; padding-bottom:4px; padding-left:0px; padding-right:3px;
    } 
    img.faqIcon {
       width:20px; padding-bottom:4px; padding-right:2px;
    } 
    img.faqIcon2 {
       width:20px; padding-bottom:4px; padding-right:2px;
    } 
    img.faqIcon3 {
       width:30px;
    } 
    img.linkClose {
       width:80px;
    } 
}
 
/*横向き*/
@media all and (orientation: landscape) { 
    img.linkIcon {
       width:12px; padding-bottom:4px; padding-right:2px;
    } 
    img.linkIcon2 {
       width:18px; padding-bottom:4px; padding-right:2px;
    } 
    img.linkIcon3 {
       width:18px; padding-bottom:4px; padding-left:5px;
    } 
    img.linkIcon4 {
       width:18px; padding-bottom:4px; padding-left:0px;
    } 
    img.linkIcon5 {
       width:18px; padding-bottom:4px; padding-left:0px; padding-right:3px;
    } 
    img.faqIcon {
       width:20px; padding-bottom:4px; padding-right:2px;
    } 
    img.faqIcon2 {
       width:20px; padding-bottom:4px; padding-right:2px;
    } 
    img.faqIcon3 {
       width:40px;
    } 
    img.linkClose {
       width:95px;
    } 
} 

/*-----------------------------------------------------------------
割引サービス立体枠
-----------------------------------------------------------------*/
.boxSolid { padding:5px; border-top:3px solid #fff; border-left:3px solid #fff; box-shadow:2px 2px 2px rgba(0,0,0,0.1); border-radius:8px; }
.boxSolidW { padding:5px; border-top:3px solid #f8f8f8; border-left:3px solid #f8f8f8; box-shadow:2px 2px 2px rgba(100,100,100,0.3); border-radius:8px; }
.boxSolidY { padding:5px; border-top:3px solid #f6f6df; border-left:3px solid #f6f6df; box-shadow:2px 2px 2px rgba(210,210,180,0.8); border-radius:8px; background-color:#fff; }
.boxSolidW2 { padding:5px; border-top:3px solid #f8f8f8; border-left:3px solid #f8f8f8; box-shadow:2px 2px 2px rgba(100,100,100,0.3) inset; border-radius:8px; }


/*-----------------------------------------------------------------
グラデーション
-----------------------------------------------------------------*/
.gradient01 {
	    background: #dddddd; /* Old browsers */
	    background: -moz-linear-gradient(top,  #dddddd 0%, #ffffff 100%); /* FF3.6+ */
	    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#dddddd), color-stop(100%,#ffffff)); /* Chrome,Safari4+ */
	    background: -webkit-linear-gradient(top,  #dddddd 0%,#ffffff 100%); /* Chrome10+,Safari5.1+ */
	    background: linear-gradient(to bottom,  #dddddd 0%,#ffffff 100%); /* W3C */
}

.gradient02 {height:32px;
	     background: #dddddd; /* Old browsers */
	     background: -moz-linear-gradient(top,  #ffffff 0%, #dddddd 100%); /* FF3.6+ */
	     background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#dddddd)); /* Chrome,Safari4+ */
	     background: -webkit-linear-gradient(top,  #ffffff 0%,#dddddd 100%); /* Chrome10+,Safari5.1+ */
	     background: linear-gradient(to bottom,  #ffffff 0%,#dddddd 100%); /* W3C */
}

.bdG2 { background-color:#dddddd; border-bottom:2px solid #838383; border-top:0px solid #dddddd; padding:7px 10px 7px 10px; font-weight:normal; font-size:120%; line-height:1.4; }
.yellowAco { margin:10px 10px 0 10px; padding:0 !important; border: 2px solid #ffc033 !important; }
.grayAco { padding:0 !important; border-top:2px solid #838383; }


.max748 { max-width:748px; }
.max740 { max-width:740px; }
.max720 { max-width:720px; }
.max700 { max-width:700px; }
.max680 { max-width:680px; }
.max650 { max-width:650px; }
.max550 { max-width:550px; }
.max480 { max-width:480px; }
.max470 { max-width:470px; }
.max440 { max-width:440px; }
.max432 { max-width:432px; }
.max423 { max-width:423px; }
.max384 { max-width:384px; }
.max360 { max-width:360px; }
.max353 { max-width:353px; }
.max350 { max-width:350px; }
.max343 { max-width:343px; }
.max340 { max-width:340px; }
.max337 { max-width:337px; }
.max328 { max-width:328px; }
.max324 { max-width:324px; }
.max296 { max-width:296px; }
.max288 { max-width:288px; }
.max275 { max-width:275px; }
.max271 { max-width:271px; }
.max259 { max-width:259px; }
.max244 { max-width:244px; }
.max240 { max-width:240px; }
.max235 { max-width:235px; }
.max228 { max-width:228px; }
.max220 { max-width:220px; }
.max218 { max-width:218px; }
.max217 { max-width:217px; }
.max216 { max-width:216px; }
.max211 { max-width:211px; }
.max202 { max-width:202px; }
.max200 { max-width:200px; }
.max192 { max-width:192px; }
.max180 { max-width:180px; }
.max176 { max-width:176px; }
.max168 { max-width:168px; }
.max164 { max-width:164px; }
.max162 { max-width:162px; }
.max150 { max-width:150px; }
.max148 { max-width:148px; }
.max144 { max-width:144px; }
.max141 { max-width:141px; }
.max137 { max-width:137px; }
.max135 { max-width:135px; }
.max129 { max-width:129px; }
.max128 { max-width:128px; }
.max123 { max-width:123px; }
.max122 { max-width:122px; }
.max120 { max-width:120px; }
.max114 { max-width:114px; }
.max112 { max-width:112px; }
.max110 { max-width:110px; }
.max109 { max-width:109px; }
.max108 { max-width:108px; }
.max101 { max-width:101px; }
.max100 { max-width:100px; }
.max92  { max-width: 92px; }
.max90  { max-width: 90px; }
.max82  { max-width: 82px; }
.max77  { max-width: 77px; }
.max75  { max-width: 75px; }
.max70  { max-width: 70px; }
.max65  { max-width: 65px; }
.max64  { max-width: 64px; }
.max60  { max-width: 60px; }
.max56  { max-width: 56px; }
.max55  { max-width: 55px; }
.max52  { max-width: 52px; }
.max46  { max-width: 46px; }
.max42  { max-width: 42px; }
.max41  { max-width: 41px; }
.max32  { max-width: 32px; }
.max26  { max-width: 26px; }
.max21  { max-width: 21px; }
.max { max-width:px; }

/* pockAlert*/
#packAlert { width:90%; margin-left:-1%; min-width:180px; border:solid 2px #cc0033; border-radius: 5px; left:0; z-index:15; }
.alt { position:fixed; top:200px; background-image:-moz-linear-gradient(top,#ffffff 0%,#f4f4f4); background: -webkit-gradient(linear, left top, right bottom, from(#ffffff),to(#f4f4f4)); }
.alt_title { text-align:center; }
.alt_title p { padding:7px; text-align:left; }
.alt_btn ul { text-align:center; min-width:180px; }
.alt_btn ul li { display:inline; }

@media screen and (max-width: 640px) {
#packAlert { width:90%; min-width:200px;border:solid 2px #cc0033; border-radius: 5px; left:5%;z-index:15; }
.alt { position:fixed; top:100px; background-image:-moz-linear-gradient(top,#ffffff 0%,#f4f4f4); background: -webkit-gradient(linear, left top, right bottom, from(#ffffff),to(#f4f4f4)); }
.alt_title { text-align:center; }
.alt_title p { padding:7px; text-align:left; }
.alt_btn ul { text-align:center; min-width:300px; }
.alt_btn ul li { display:inline; }
}

/* JavaScript */
#errList { display:none; }
input[type=checkbox]{ visibility: hidden; }
input[type=radio]{ visibility: hidden; }
.checkImg { visibility:hidden; }

/* importantArea */
.importantArea {
	margin: 0 0 10px;
	padding: 10px;
	background: #fbdee5;
}

/*-----------------------------------------------------------------
オススメ画像
-----------------------------------------------------------------*/
.recom {
	position:absolute;
	top:0px!important;
	left:27px!important;
}
/*-----------------------------------------------------------------
シェア画像
-----------------------------------------------------------------*/
.share {
	position:absolute;
	top:-3px!important;
	left:27px!important;
}

/*-----------------------------------------------------------------
newplan
-----------------------------------------------------------------*/
.mdsBgW {
	border-bottom: 2px solid #000000;
	font-size: 120%;
	padding-bottom: 3px;
	line-height: 1.4;
}
.otherPlan {
	padding-left: 22px;
	padding-right: 8px;
	background: url(../img/ico_caution.gif) no-repeat left top;
	background-size: 20px;
}
/*-----------------------------------------------------------------
dummy
-----------------------------------------------------------------*/
.dummy {
	color: magenta
}

.dummyP1 {
	color: blue
}

.dummyP2 {
	color: green
}

.dummyP3 {
	color: purple
}

/* 全表示プレビュー用 */
div.zenhyoji {
	font-size:12px !important;
	margin-bottom:1em !important;
	margin-top:1em !important;
	color:blue !important;
	font-weight:normal !important;
	text-align:left !important;
	text-decoration:underline !important;
}
/*-----------------------------------------------------------------
アコーディオン調整
-----------------------------------------------------------------*/
.accBox{
	padding:0;
	border:2px solid #ccc;
	background-color:#ececec;
}
.accBox .accordionArea{
	padding:0 10px 10px;
}
.accBox .accWrap{
	padding:10px;
	width:100%;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	position:relative;
}
.accBox2{
	border:2px solid #ffc033 !important;
}
.accBox2 .accWrap{
	padding:10px;
	background-color:#ffffe7;
	position:relative;
}
.accBox2 .accordionArea{
	padding:0;
	background-color:#fff;
}
.accBox3{
	border:2px solid #ccc;
	background-color:#fff;
}
.accBox3 .accWrap{
	padding:10px;
	position:relative;
}
.accBox3 .accordionArea{
	padding:0 10px 10px;
}
.accWrap .ttl,
.accWrap .ttl2{
	padding-right:28px;
	font-size:110%;
	display:block;
}
.accWrap .ttl2 img{
	display:inline-block;
}
.accWrap .ttl2 p{
	width:75%;
	vertical-align:middle;
	display:inline-block;
}
.accWrap .pm{
	font-size:0;
	position:absolute;
	right:3%;
	margin-top:-12px;
	top:50%;
}

.kiyakuArea2 h3 {  padding:6px 18px 6px 18px!important; font-size:110%!important; }
.kiyakuArea2 .sp_aco_off       { font-size:120%!important; }
.kiyakuArea2 .sp_aco_on        { font-size:120%!important; }
.kiyakuArea2 .sp_acoIn_ttl_on  { font-size:110%!important; }
.kiyakuArea2 .sp_acoIn_ttl_off { font-size:110%!important; }
.kiyakuArea2 .tabBtn { padding:0 !important; border:none !important; background:#fff!important; }

.kiyakuArea2 .accWrap{
	padding:0 !important;
	width:100%;
	position:relative;
}
.kiyakuArea2 .accWrap .ttl,
.kiyakuArea2 .accWrap .ttl2{
	padding-right:28px;
	font-size:110%;
	display:block;
}
.kiyakuArea2 .accWrap .ttl2 img{
	display:inline-block;
}
.kiyakuArea2 .accWrap .ttl2 p{
	width:75%;
	vertical-align:middle;
	display:inline-block;
}
.kiyakuArea2 .accWrap .pm{
	font-size:0;
	position:absolute;
	right:1%;
	margin-top:-12px;
	top:50%;
}

/*-----------------------------------------------------------------
n03
-----------------------------------------------------------------*/
dl.list_side dt.n03_sid01 { float:left; width:8em; clear:left; }
dl.list_side dd.n03_sid02 { float:left; width:1em; }
dl.list_side dd.n03_sid03 { margin-left:9em; text-align:left; }

/* 180622 add */
/*-----------------------------------------------------------------
colorbox
-----------------------------------------------------------------*/
/*
		Colorbox Core Style:
		The following CSS is consistent between example themes and should not be altered.
*/
#colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden; -webkit-transform: translate3d(0,0,0);}
#cboxWrapper {max-width:none;}
#cboxOverlay{position:fixed; width:100%; height:100%;}
#cboxMiddleLeft, #cboxBottomLeft{clear:left;}
#cboxContent{position:relative;}
#cboxLoadedContent{overflow:auto; -webkit-overflow-scrolling: touch;}
#cboxTitle{margin:0;}
#cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%; height:100%;}
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}
.cboxPhoto{float:left; margin:auto; border:0; display:block; max-width:none; -ms-interpolation-mode:bicubic;}
.cboxIframe{width:100%; height:100%; display:block; border:0; padding:0; margin:0;}
#colorbox, #cboxContent, #cboxLoadedContent{box-sizing:content-box; -moz-box-sizing:content-box; -webkit-box-sizing:content-box;}

/* 
		User Style:
		Change the following styles to modify the appearance of Colorbox.  They are
		ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
/* #cboxOverlay{background:url(images/overlay.png) repeat 0 0; opacity: 0.9; filter: alpha(opacity = 90);} */
#colorbox{outline:0;}
/* #cboxTopLeft{width:21px; height:21px; background:url(images/controls.png) no-repeat -101px 0;}
#cboxTopRight{width:21px; height:21px; background:url(images/controls.png) no-repeat -130px 0;}
#cboxBottomLeft{width:21px; height:21px; background:url(images/controls.png) no-repeat -101px -29px;}
#cboxBottomRight{width:21px; height:21px; background:url(images/controls.png) no-repeat -130px -29px;}
#cboxMiddleLeft{width:21px; background:url(images/controls.png) left top repeat-y;}
#cboxMiddleRight{width:21px; background:url(images/controls.png) right top repeat-y;}
#cboxTopCenter{height:21px; background:url(images/border.png) 0 0 repeat-x;}
#cboxBottomCenter{height:21px; background:url(images/border.png) 0 -29px repeat-x;} */
#cboxContent{background:#fff; overflow:hidden;}
.cboxIframe{background:#fff;}
#cboxError{padding:50px; border:1px solid #ccc;}
#cboxLoadedContent{margin-bottom:0;}
#cboxTitle{position:absolute; bottom:4px; left:0; text-align:center; width:100%; color:#949494;}
#cboxCurrent{position:absolute; bottom:4px; left:58px; color:#949494;}
/* #cboxLoadingOverlay{background:url(images/loading_background.png) no-repeat center center;}
#cboxLoadingGraphic{background:url(images/loading.gif) no-repeat center center;} */

/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
#cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {border:0; padding:0; margin:0; overflow:visible; width:auto; background:none; }

/* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
#cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {outline:0;}

/* #cboxSlideshow{position:absolute; bottom:4px; right:30px; color:#0092ef;}
#cboxPrevious{position:absolute; bottom:0; left:0; background:url(images/controls.png) no-repeat -75px 0; width:25px; height:25px; text-indent:-9999px;}
#cboxPrevious:hover{background-position:-75px -25px;}
#cboxNext{position:absolute; bottom:0; left:27px; background:url(images/controls.png) no-repeat -50px 0; width:25px; height:25px; text-indent:-9999px;}
#cboxNext:hover{background-position:-50px -25px;} */
/* #cboxClose{position:absolute; bottom:0; right:0; background:url(images/controls.png) no-repeat -25px 0; width:25px; height:25px; text-indent:-9999px;} */
/* #cboxClose:hover{background-position:-25px -25px;} */

/*
	The following fixes a problem where IE7 and IE8 replace a PNG's alpha transparency with a black fill
	when an alpha filter (opacity change) is set on the element or ancestor element.  This style is not applied to or needed in IE9.
	See: http://jacklmoore.com/notes/ie-transparency-problems/
*/
.cboxIE #cboxTopLeft,
.cboxIE #cboxTopCenter,
.cboxIE #cboxTopRight,
.cboxIE #cboxBottomLeft,
.cboxIE #cboxBottomCenter,
.cboxIE #cboxBottomRight,
.cboxIE #cboxMiddleLeft,
.cboxIE #cboxMiddleRight {
		filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);
}

/*-----------------------------------------------------------------
modal
-----------------------------------------------------------------*/
#cboxOverlay{background:#000; opacity: 0.5; filter: alpha(opacity = 90);}
#cboxContent{border-radius: 20px;}
#cboxClose{position:absolute; top:10px; right:7px; background:url(../img/icon-modal-close.gif) no-repeat center center; background-size:100%; width:25px; height:25px; text-indent:-9999px;}

.modalCnt {
	display: none;
}
.modalCntInner {
	padding: 20px 30px;
	text-align: left;
}
.modalCntInner .modalTit01 {
	margin-bottom: 15px;
	font-size: 130%;
	font-weight: bold;
}
.modalCntInner .modalBlock01 > * {
	margin-top: 10px;
}
.modalCntInner .modalBlock01 > *:first-child {
	margin-top: 0;
}

/*-----------------------------------------------------------------
modalAnchor
-----------------------------------------------------------------*/
.modalAncBlock {
	position: relative;
	padding-right: 8%;
}
.modalAncBlock .modalAncBtn {
	width: 16px;
	height: 18px;
	position: absolute;
	top: 0;
	right: 0;
	margin-top: 0px;
}
.modalAncBlock .modalAncBtn > a {
	display: block;
	width: 100%;
	height: 100%;
	background: url("../img/icon-help.png") no-repeat center center;
	background-size: contain;
	z-index:100;
}
/*
 * カルーセル欄
 */
.carousel_container {
  overflow: hidden;
  width: 100%;
  display: box; display: -webkit-box; display: -moz-box; display: -o-box; display: -ms-box;
  position: relative;
  padding: 0;
  overflow: hidden;
  width: 100%;
  box-align: stretch; -webkit-box-align: stretch; -moz-box-align: stretch; -o-box-align: stretch; -ms-box-align: stretch; }
  .carousel_container > .carousel_arrow {
    display: block;
    width: 14px;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 8px auto; }
  .carousel_container > .carousel_arrow.carousel_arrow_left { background-image: url("../img/carousel-arrow-left.png"); }
  .carousel_container > .carousel_arrow.carousel_arrow_right { background-image: url("../img/carousel-arrow-right.png"); }
  .carousel_container > .carousel_content {
    box-flex: 1; -webkit-box-flex: 1; -moz-box-flex: 1; -o-box-flex: 1; -ms-box-flex: 1;
    position: relative;
    overflow: hidden; }
    .carousel_container > .carousel_content > .carousel_item > .flL {
      position:relative;
      background-color: #FFFFFF; }
    .carousel_container > .carousel_content > .carousel_item > .flL:before {
      content:"";
      display: block;
      padding-top: 132%; }
      .carousel_container > .carousel_content > .carousel_item > .flL > p {
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0; }
        .carousel_container > .carousel_content > .carousel_item > .flL > p > img {
          position: absolute;
          top: 0;
          left: 0;
          bottom: 0;
          right: 0;
          margin: auto; }

/* エラー 吹き出し */
.erTxtMark.erTxtInline {
	display: inline-block;
}
.erTxtMark .erTxt02 {
	text-align: center;
}
.erTxtMark .erTxt02 .erTxt02Inner {
	display: inline-block;
	margin: 10px 0 15px;
	padding: 6px 8px;
	background: #cf0033;
	border-radius: 3px;
	position: relative;
}
.erTxtMark .erTxt02 .erTxt02Inner:before {
	content: "";
	width: 0px;
	height: 0px;
	margin: 0 0 -9px -5px;
	border-style: solid;
	border-color: #cf0033 transparent transparent transparent;
	border-width: 10px 10px 0 10px;
	position: absolute;
	bottom: 0;
	left: 50%;
}
.erTxtMark .erTxt02 .erTxt02Inner p {
	margin-top: 5px;
	font-size: 80%;
	color: #fff;
	text-align: left;
}
.erTxtMark .erTxt02 .erTxt02Inner p:first-child {
	margin-top: 0;
}

/* チェック 吹き出し */
.agreeGroup div.checked .chk.checkBln01 .agreeChk2.checkBlnTxt01 {
	display: none;
}
.chk.checkBln01 .agreeChk2.checkBlnTxt01 {
	display: block;
	width: auto;
	margin-bottom: 15px;
	position: static;
}
.chk.checkBln01 .agreeChk2.checkBlnTxt01 span {
	display: inline-block;
	padding: 6px 8px;
	background: #cf0033;
	color: #fff;
	border-radius: 3px;
	position: relative;
}
.chk.checkBln01 .agreeChk2.checkBlnTxt01 span:before {
	content: "";
	width: 0px;
	height: 0px;
	margin: 0 0 -9px -5px;
	border-style: solid;
	border-color: #cf0033 transparent transparent transparent;
	border-width: 10px 10px 0 10px;
	position: absolute;
	bottom: 0;
	left: 50%;
}
.sp_r_border{
	background-image: url(../img/sp_r05_border.gif), url(../img/sp_r05_border.gif), url(../img/sp_r05_border.gif), url(../img/sp_r05_border.gif);
	background-repeat: repeat-x, repeat-y, repeat-x, repeat-y;
	background-position: left top, left top, right bottom, right bottom;
}
