@charset "utf-8";

/* 共通
---------------------------------------------------- */

h2 {
	margin-bottom:10px;
}



/* method
---------------------------------------------------- */

#method .flowFrame {
	display:block;
	-webkit-border-radius:5px;
	-moz-border-radius: 5px;
	border:#DBDEE6 3px double;
	background:
	-webkit-gradient(linear, center top, center bottom, from(#ffffff), to(#F8FAFE));
	background-color:#F8FAFE;
	letter-spacing:2px;
	padding:10px;
}

#method .midashiEx {
	border-bottom: #CCC dashed 1px;
	margin-bottom:10px;
}

#method .midashiExNoBorder {
	border-bottom:none;
	margin-bottom:10px;
}

#method .flowTtl {
	color:#2D75E1;
	font-size:120%;
	font-weight:bold;
	margin-bottom:5px;
}

#method .flowTxtWrap {
	font-size:12px;
	padding:3px 5px 0 5px;
}

#method .flowArrow {
	background:url(../img/common/icn_arrow.gif);
	width:136px;
	height:17px;
	background-repeat:no-repeat;
	text-indent:-7777px;	
	overflow:hidden;
	margin:10px auto 10px auto;
}


/* partner
---------------------------------------------------- */


table.tablePartner {
	border-top: 1px #CCCCCC solid;
	border-left: 1px #CCCCCC solid;
	margin-bottom:30px;
	margin:0 0 5px 0;
	width:100%;
	border-collapse: collapse;
	font-size:12px;
}



table.tablePartner th { 
	padding:6px;
	border-bottom: 1px #CCCCCC solid;
	border-right: 1px #CCCCCC solid;
	font-weight:normal;
	background-color:#F1FBFE;
	text-align:center;
	vertical-align:top;
}

table.tablePartner th.thBgColorY { 
	padding:6px;
	border-bottom: 1px #CCCCCC solid;
	border-right: 1px #CCCCCC solid;
	font-weight:normal;
	background-color:#FCFAF1;
	text-align:center;
	vertical-align:top;
	width:30px;
}


table.tablePartner td {
	padding:6px;
	border-bottom: 1px #CCCCCC solid;
	border-right: 1px #CCCCCC solid;
	font-weight:normal;
	background-color:#FFFFFF;
	text-align:left;
	vertical-align:top;
}

table.tablePartner td.tdCenter {
	padding:6px;
	border-bottom: 1px #CCCCCC solid;
	border-right: 1px #CCCCCC solid;
	font-weight:normal;
	background-color:#FFFFFF;
	text-align:center;
	vertical-align:top;
}
/*  priceTable   */


table.priceTable {
	border-top: 1px #afafaf solid;
	border-left: 1px #afafaf solid;
	width:100%;
	/* [disabled]border-collapse: collapse; */
}

table.priceTable th {
	padding:2px 10px;
	/* [disabled]border-bottom: 1px #afafaf solid; */
	border-right: 1px #afafaf solid;
	font-weight:normal;
	background-color:#cdf1d4;
	vertical-align:middle;
	text-align:center;
	white-space: nowrap;
}


table.priceTable td {
	padding:2px 10px;
	border-bottom: 1px #afafaf solid;
	border-right: 1px #afafaf solid;
	font-weight:normal;
	vertical-align:top;
	text-align:left;
}

table.priceTable td.tdCenter {
	padding:2px 10px;
	border-bottom: 1px #afafaf solid;
	border-right: 1px #afafaf solid;
	font-weight:normal;
	vertical-align:top;
	text-align:center;
}
table.priceTable td.tdFeature {
	background-color:#f4f4ad;
}
th.double {
	border-bottom-width: 3px;
	border-bottom-style: double;
	border-bottom-color: #afafaf;
}
th.solid {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #afafaf;
}
.bg_pink {
	background-color: #F2CCF1!important;
}
.bg_blue {
	background-color: #d1fdfd!important;
}
.bg_blue2 {
	background-color: #F2F9FD;
}
.txt_pink {
	color: #D968D6;
}
table{
	width:100%;
}
.scroll{
	overflow: auto;　　　　/*tableをスクロールさせる*/
	white-space: nowrap;　　/*tableのセル内にある文字の折り返しを禁止*/
}
.scroll::-webkit-scrollbar{　　/*tableにスクロールバーを追加*/
	height: 5px;
}
.scroll::-webkit-scrollbar-track{　　/*tableにスクロールバーを追加*/
	background: #F1F1F1;
}
.scroll::-webkit-scrollbar-thumb {　　/*tableにスクロールバーを追加*/
	background: #BCBCBC;
}


.bg_price1{
    position: relative;
    background: #fff0cd;
    box-shadow: 0px 0px 0px 5px #fff0cd;
    border: dashed 2px white;
    padding: 1em;
    color: #454545;
}
.bg_price1:after{
    position: absolute;
    content: '';
    right: -7px;
    top: -7px;
    border-width: 0 15px 15px 0;
    border-style: solid;
    border-color: #ffdb88 #fff #ffdb88;
    box-shadow: -1px 1px 1px rgba(0, 0, 0, 0.15);
}
.bg_price1 p {
	margin: 0;
	padding: 0;
}
p.before {
	padding-left:1em;
	position:relative;
}
p.before:before {
	content:"※";
	position:absolute;
	left:0;
	top:0;
}

.box-1 {
	box-sizing: border-box;
	border: 2px solid #ea0005;
	border-radius: 4px;
	padding: 2em;
	position: relative;
	
	width: 99%;
	margin-top: 2em;
	margin-right: 0.5%;
	margin-bottom: 2em;
	margin-left: 0.5%;
}
.box-2 {
	box-sizing: border-box;
	border: 2px solid #009900;
	border-radius: 4px;
	padding: 2em;
	position: relative;
	width: 99%;
	margin-top: 2em;
	margin-right: 0.5%;
	margin-bottom: 2em;
	margin-left: 0.5%;
}

.contents {
overflow-x: auto;
-webkit-overflow-scrolling: touch;
position: relative;
}
.contents:after {
content:"＞"; 
position: absolute;
right:50px; 
font-size:80px; 
margin-top: -40px;
top:50%;
opacity: 0; 
}
.contents.show:after {
opacity: 0.2; 
transition: .8s; 
right:5px; 
}
.contents.del:after {
display: none;
}

.contents2 {
overflow-x: auto;
-webkit-overflow-scrolling: touch;
position: relative;
}
.contents2:after {
content:"＞"; 
position: absolute;
right:50px; 
font-size:80px; 
margin-top: -40px;
top:50%;
opacity: 0; 
}
.contents2.show:after {
opacity: 0.2; 
transition: .8s; 
right:5px; 
}
.contents2.del:after {
display: none;
}
.flow {
    width: 100%;
    border:1px solid #ffbe60;
    background-position: left top;
    background-repeat: no-repeat;
	border-radius:5px;
    padding-top: 12px;
    margin-bottom: 50px;
    margin-right: auto;
    margin-left: auto;
}

.flow .wrapFlow {
    width: 92%;
    background-position: left bottom;
    background-repeat: no-repeat;
    padding: 0 12px 20px 12px;
	position: relative;
}
.flow  .wrapFlow::before {
  content: "";
  display: block;
  position: absolute;
  bottom: -30px;
  left: 50%;
  width: 0;
  height: 0;
  transform: translateX(-50%);
  border: 30px solid transparent;
  border-top: 30px solid #ffbe60;
  border-bottom-width: 0;
}
.flow .wrapFlow h3 {
    background-image: url(../img/common/bg_h3_flow.gif);
    background-position: left 8px;
    padding: 4px 0 6px 10px;
    font-size: 110%;
    background-repeat: no-repeat;
    border-bottom-width: 1px;
    border-bottom-style: dotted;
    border-bottom-color: #CCC;
    font-weight: bold;
	background:none;
	width:90%;
	margin:10px 0;
}
/* txt */
.txt2 {
   font-size:1.2rem;
   font-weight:800;
}
.txtbold {
   font-weight:bold;
}
.tx-center {
   text-align:center
}
.tx-left {
   text-align:left;
}
.tx-right {
   text-align:right;
}
.tx_marker {
   background:linear-gradient(transparent 75%, #fff799 75%);
   font-weight:bold;
   display:inline;
}
/* color */

.red {
	color: #bc2d2d;
}
.green {
	color: #3b7a28;
}
.brown {
	color: #a67435;
}
.blue {
	color: #325f99;
}
.catchcopy {
    font-size: 2rem;
    font-family: 'Noto Sans Japanese';
    font-weight: 400;
    line-height: 1.3em;
    color: #E0625E;
}
.col_red {
	color:#F33;
}
.col_green {
	color: #1a9651 !important;
}
.col_blue {
	color: #06C;
}
.col_orange {
	color: #F06000;
}
.tx-70p  {
	font-size:70%;
	letter-spacing:nomal;
}	
.tx-80p  {
	font-size:80%;
	letter-spacing:nomal;
}
.tx-90p  {
	font-size:90%;
	letter-spacing:nomal;
}
.tx100p    {
	font-size:100%;
	letter-spacing:nomal;
}
.tx-110p {
    font-size: 110%;
    letter-spacing: nomal;
}
.tx-120p    {
	font-size:120%;
	letter-spacing:nomal;
}
.tx-130p    {
	font-size:130%;
	letter-spacing:nomal;
}
.tx-140p    {
	font-size:140%;
	letter-spacing:nomal;
	line-height:1.4em;
}
.tx-150p    {
	font-size:150%;
	letter-spacing:nomal;
}
.tx-160p    {
	font-size:160%;
	letter-spacing:nomal;
}
.tx-170p    {
	font-size:170%;
	letter-spacing:nomal;
}
.tx-180p    {
	font-size:180%;
	letter-spacing:nomal;
}
.tx-230p    {
	font-size:230%;
	letter-spacing:nomal;
}
.mar0 {
    margin:0 auto;
}
.txsize1 {
   font-size:1.2rem;
   font-weight:800;
   color:#F33;
   text-align:center;
}
.txtstyle1 {
	font-size: 1.16em;
	font-weight: bold;
}
.txtstyle2 {
	font-size: 1.24em;
	font-weight: bold;
}
.ex {
    padding-left:1em;
    text-indent:-1em;
}
/*===========================
spacer
===========================*/


.mt10 {
	margin-top:10px !important;
}
.mt20 {
	margin-top:20px !important;
}
.mt30 {
	margin-top:30px !important;
}
.mt40 {
	margin-top:40px !important;
}
.mt50 {
	margin-top:50px !important;
}
.mt60 {
	margin-top:60px !important;
}
.mt70 {
	margin-top:70px !important;
}
.mt80 {
	margin-top:80px !important;
}
.mt0{
	margin-top:0px !important;}
	
.mb10 {
	margin-bottom:10px !important;
}
.mb20 {
	margin-bottom:20px !important;
}
.mb30 {
	margin-bottom:30px !important;
}
.mb40 {
	margin-bottom:40px !important;
}
.mb50 {
	margin-bottom:50px !important;
}
.mb60 {
	margin-bottom:60px !important;
}
.mb70 {
	margin-bottom:70px !important;
}
.mb80 {
	margin-bottom:80px !important;
}
.mb0{
	margin-bottom:0px !important;}


.pt10 {
	padding-top:10px !important;
}
.pt20 {
	padding-top:20px !important;
}
.pt30 {
	padding-top:30px !important;
}
.pt40 {
	padding-top:40px !important;
}
.pt50 {
	padding-top:50px !important;
}
.pt60 {
	padding-top:60px !important;
}
.pt70 {
	padding-top:70px !important;
}
.pt80 {
	padding-top:80px !important;
}
.pt0{
	padding-top:0px !important;}
	
.pb10 {
	padding-bottom:10px !important;
}
.pb20 {
	padding-bottom:20px !important;
}
.pb30 {
	padding-bottom:30px !important;
}
.pb40 {
	padding-bottom:40px !important;
}
.pb50 {
	padding-bottom:50px !important;
}
.pb60 {
	padding-bottom:60px !important;
}
.pb70 {
	padding-bottom:70px !important;
}
.pb80 {
	padding-bottom:80px !important;
}
.pb0{
	padding-bottom:0px !important;}

table tr th {
    padding: 5px;
    border: 1px solid #CCC;
    font-weight: normal;
    text-align: center;
    background-color: #FEFAED;
	vertical-align:middle;
}

table tr td {
    padding: 5px;
    border: 1px solid #CCC;
	vertical-align:middle;
}

.waku {
    border-color: #999;
    border-width: 2px;
    border-style: dashed;
    padding: 20px 15px;
    margin-bottom: 2em;
}
.h2_base {
    background-image: url(../img/common/h2_base.gif);
    background-repeat: no-repeat;
    background-position: left top;
    height: 43px;
    width: 658px;
    overflow: hidden;
    font-size: 120%;
    font-weight: bold;
    color: #444444;
    vertical-align: middle;
    display: table-cell;
    padding-left: 20px;
    layout-grid-line: 43px;
    clear: both;
}
.txt_center {
    text-align: center;
}

.text {
    margin-bottom: 1em;
    padding-right: 5px;
    padding-left: 5px;
}
.tx-em {
    background: linear-gradient(transparent 62%, rgba(255, 250, 137, 0.71) 0%);
}
.check2 li {
    background-image: url(../img/common/check.jpg);
    background-repeat: no-repeat;
    background-position: left 6px;
    padding-left: 25px;
    padding-bottom: 5px;
    padding-top: 5px;
    margin-right: 5px;
    margin-left: 5px;
    padding-right: 5px;
    float: none;
    width: 90%;
}
.col_orange {
    color: #F06000;
}
.flow .wrapFlow h3 {
    background-image: url(../img/common/bg_h3_flow.gif);
    background-position: left 8px;
    padding: 4px 0 6px 18px;
    font-size: 120%;
    background-repeat: no-repeat;
    border-bottom-width: 1px;
    border-bottom-style: dotted;
    border-bottom-color: #CCC;
    font-weight: bold;
}
ul.point2 li {
    background-repeat: no-repeat;
    background-position: left 9px;
    padding-left: 18px;
    padding-bottom: 5px;
    padding-top: 5px;
    padding-right: 5px;
    background-image: url(../img/common/point.png);
    float: none;
    width: 100%;
    margin-right: 5px;
    margin-left: 5px;
	font-size:1.1em;
}
.text2 {
    padding-right: 5px;
    padding-left: 5px;
}
.text3 {
    margin-bottom: 1em;
    padding-right: 5px;
    padding-left: 5px;
}
ul.point li {
    background-repeat: no-repeat;
    background-position: left 9px;
    padding-left: 18px;
    padding-bottom: 5px;
    padding-top: 5px;
    margin-right: 5px;
    margin-left: 5px;
    padding-right: 5px;
    background-image: url(../img/common/point.png);
    font-size:1.1em;
}
dl.qa dt {
    background-image: url(../img/common/q_orenge.jpg);
    background-repeat: no-repeat;
    background-position: left 1px;
    line-height: 1.5em;
    border-bottom-width: 1px;
    border-bottom-style: dotted;
    border-bottom-color: #CCC;
    padding-left: 42px;
    font-weight: bold;
    clear: both;
    padding-top: 5px;
    padding-bottom: 10px;
}
dl.qa dd {
    padding-left: 42px;
    padding-top: 10px;
    background-image: url(../img/common/a_green.jpg);
    background-repeat: no-repeat;
    background-position: left 5px;
    margin-bottom: 20px;
    padding-bottom: 5px;
}
h5 {
    font-size:1.1em;
}