@charset "utf-8";

/* base
---------------------------------------------*/

body {
  background: #fff url(../images/bg.jpg);
}

ol {
	/*margin: 20px 40px 20px 50px;*/
}

ol li {
	/*margin: 0 0 20px;*/
}

ol li ol {
	margin: 15px 40px 20px 30px;
	counter-reset: li;
	list-style: none;
	padding-left: 0;
}
ol.ol01 {
  list-style-type: none;
  font-size: 120%;
  margin: 0 30px;
}
ol.ol01 li {
  margin-top: 10px;
}
ol.ol02 {
	margin: 15px 40px 20px 30px;
	counter-reset: li;
	list-style: none;
}

ol li li,
ol.ol02 li {
 position: relative;
 margin-bottom: .5em;
 padding-left: 2.5em;
}

ol li li:before,
ol.ol02 li:before {
 content: counter(li) "";
 counter-increment: li;
 position: absolute;
 left: 0;
 width: 1.8em;
 height: 1em;
 border: solid #000;
 border-width: 0 1px;
 border-radius: 50px;
 color: #000;
 line-height: 1em;
 text-align: center;
 margin-top: 0.2em;
}

img.fLeft {
	margin: 18px 20px 20px 18px;
}

img.fRight {
	margin: 18px 18px 20px 20px;
}


/* link
---------------------------------------------*/
a {
	color: #000;
	text-decoration: none;
}
a:hover {
	color: #444;
	text-decoration: underline;
  opacity: 0.7;
}

/* header
---------------------------------------------*/
#header {
	text-align: center;
	width: 100%;
	background: #000;
  color: #fff;
  padding: 8px 0;
}

#header h1 {
  font-size: 86%;
  font-weight: normal;
}


#header div {
	max-width: 1090px;
	margin: 0 auto;
	text-align: left;
}


#header h1 strong {
	font-size: 140%;
	margin: 0 5px;
	color: #ff9c00;
}
#header h1 a {
	text-decoration: none;
}

#header .btn.login {
	position: absolute;
	right: 0;
	margin-top: 15px;
}



/* container
---------------------------------------------*/
#container {
	margin-right: auto;
	margin-left: auto;
	position: relative;
  padding-bottom: 50px;
  background:  url(../images/bg01.png) no-repeat center 20px;
  overflow: hidden;
  padding-top: 110px;
  min-width: 1120px;
}

body#index #container:before {
  content: url(../images/bg03.png);
  position: absolute;
  left: -160px;
  z-index: 1;
  top:20px;
}
#container:after {
  content: url(../images/bg02.png);
  position: absolute;
  right: -60px;
  top: 90px;
  z-index: 1;
}



/* contents
---------------------------------------------*/
#contents {
	width: 100%;
	display: flex;
	-js-display: flex;
  z-index: 100;
}

#bnrTop {
}
#bnrTop li {
	box-sizing: border-box;
	width: 32%;
	max-width: 380px;
	margin-bottom: 0;
}
#bnrTop li img {
}

/* main
---------------------------------------------*/
#main {
	padding-bottom: 30px;
	width: 1090px;
	vertical-align: top;
  margin: auto;
}

#main .inner {
  width: 970px;
  margin: auto;
}

/* .breadcrumbs ------*/

#contents .breadcrumbs {
	margin-bottom: 10px;
	font-size: 93%;
	margin-top: 15px;
}

#contents .breadcrumbs li {
	padding-right: 15px;
}

#contents .breadcrumbs li a {
	text-decoration: none;
}

#contents .breadcrumbs li a:after {
	content: ">";
	margin-left: 5px;
	text-decoration: none;
	color: #000;
}




/* headline ------*/

#main h1 {
  
}


h2.title {
  padding-bottom: 30px;
}

body#second h2 span {
  display: block;
  background: url(../images/h2.png) no-repeat bottom;
  padding-bottom: 15px;
  text-align: left;
	font-weight: bold;
	font-size: 120%;
  padding-left: 10px;
}


#main h2.headline:before {
  content: "";
  width: 8px;
  background: #52acd1;
  border-radius: 5px;
  display: block;
  height: 2em;
  position: absolute;
}



body#second #main h3 {
	font-size: 140%;
  text-align: left;
  background: url(../images/h302.png) no-repeat bottom;
  padding-bottom: 10px;
  padding-left: 10px;
}
body#second #main h3 span {
  background: url(../images/h301.png) no-repeat left;
  padding-left: 30px;
}
body#second #main h4 {
	font-size: 120%;
  text-align: left;
  padding-bottom: 5px;
  margin: 10px;
  border-bottom: 1px solid #000;
}


/* tab */

#main .tab,
#main .tab2 {
	/*border-bottom: 1px solid #ccc;*/
	display: table;
	border-collapse: separate;
	border-spacing: 20px 0;
	box-sizing: border-box;
	z-index: 100;
	position: relative;
}

#main .tab li,
#main .tab2 li {
	display: table-cell;
	border: 0;
	margin: 0 15px 0 0;
}


#main .tab li.active,
#main .tab2 li.active {
	border: 2px solid #000;
	border-bottom: -2px solid #fff;
	margin-bottom: -1px;
	text-align: center;
	font-weight: bold;
	border-radius: 5px 5px 0 0;
	background: #eee;
}

#main .tab li.active a,
#main .tab2 li.active a {
	background: #ffe400;
	margin-bottom: -5px;
	border-bottom: 2px solid #eee;
}

#main .tab li.active span,
#main .tab2 li.active span {
	display: inline-block;
}

#main .tab li a,
#main .tab2 li a {
	padding: 4px 40px 5px;
	display: block;
	color: #000;
	font-size: 120%;
	background: #eee;
	border-bottom: 2px solid #000;
	text-align: center;
	font-weight: bold;
	border-radius: 5px 5px 0 0;
}

#main .tab li a:hover,
#main .tab2 li a:hover {
	opacity: 0.7;
}

#main .tab li a span,
#main .tab2 li a span {
	display: inline-block;
	padding: 3px;
}

/**/


#main .tab.type2 {
	display: flex;
	flex-direction: row;
	width: 100%;
	justify-content: center;
}

#main .tab.type2 li {
	display: block;
	border: 0;
	margin: 0 15px 0 0;
}

#main .tab.type2 li.active {
	border: none;
}

#main .tab li.active span,
#main .tab2 li.active span {
	display: inline-block;
}

#main .tab.type2 li a {
	border: none;
	border-radius: 3px;
}




#main .tab.type3 {
  display: table;
	width: 100%;
  box-sizing: border-box;
}

#main .tab.type3 li {
	border: 0;
	margin: 0;
	background: #eee;
	border-radius: 3px;
}

#main .tab.type3 li.active {
	border: none;
	background: #ffe400;
}

#main .tab.type3 li a {
	border: none;
	border-radius: 3px;
  padding: 5px;
  vertical-align: middle;
  width: 100%;
  box-sizing: border-box;
  line-height: 1;
	background: #eee;
}
#main .tab.type3 li.active a {
	background: #ffe400;
}

#main .tab li a:hover,
#main .tab2 li a:hover {
	opacity: 0.7;
}

#main .tab li a span,
#main .tab2 li a span {
	display: inline-block;
	padding: 3px;
}


#main .tabBg {
	z-index: 1;
	position: relative;
}

#main .tabContent,
#main .tabContent2 {
	display: none;
	position: relative;
	z-index: 50;
	top: 0;
}

#main .tabContent.active,
#main .tabContent2.active {
	display: block;
	position: relative;
	z-index: 50;
	top: 0;
}

#main .tabContent h3,
#main .tabContent2 h3 {
	background: #eee;
	padding: 20px;
	border: none;
	font-size: 110%;
}

#main .tabContent h3 span,
#main .tabContent2 h3 span {
	border: none;
	padding:0;
}



/* balloon
---------------------------------------------*/


.balloonBox {
	margin-bottom: 30px;
}

.balloonBox .cell {
	vertical-align: middle;
	line-height: 1;
}
.balloonBox .cell img {
	display: block;
}
.balloon {
	padding: 10px;
	box-sizing: border-box;
	position: relative;
	margin-right: 30px;
}

.balloon:before {
	position: absolute;
	left: -14px !important;
}

.balloon.fRight:before {
	position: absolute;
	top: 15px;
	left: -14px;
}

.balloon.type1 {
	border: 3px solid #000;
}

.balloon.type1:before {
	content: url(../images/balloonArw.png);
	opacity: 1;
}

.balloonBox .content {
	width: 200px;
}

/* tile
---------------------------------------------*/
.tile {
	display: flex;
	-js-display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.tile li {
	position: relative;
}
.column3 {
	width: 100%;
}

.column3 .tile {
}

.column3 .tile li {
	width: 31%;
	margin-bottom: 30px;
	max-width: 270px;
	min-width: 221px;
}

.column3 .tile li a {
	display: block;
	text-align: center;
}

.column3 .tile > li img {
	width: 100%;
	height: auto;
	box-sizing: border-box;
	display: block;
}

.column4 {
	width: 100%;
}

.column4 .tile {
}

.column4 .tile li {
	width: 24%;
	margin-bottom: 30px;
	max-width: 195px;
}

.column4 .tile li a {
	display: block;
	text-align: center;
}

.column4 .tile > li img {
	width: 100%;
	height: auto;
	box-sizing: border-box;
	display: block;
}

.column5 {
	width: 100%;
}

.column5 .tile {
}

.column5 .tile li {
	width: 18%;
	margin-bottom: 30px;
	max-width: 195px;
}

.column5 .tile li a {
	display: block;
	text-align: center;
}

.column5 .tile > li img {
	width: 100%;
	height: auto;
	box-sizing: border-box;
	display: block;
}

.title {
	font-size: 120%;
	font-weight: bold;
	margin-top: 10px;
	/*height: 3em;
	overflow: hidden;
	text-overflow: ellipsis;*/
}

.column5 .title {
	font-size: 110%;
	font-weight: bold;
	margin-top: 10px;
}

.favorite {
	color: #ff2a00;
}

.tile .logo,
.icon.logo {
	position: absolute;
	right: 0;
	top: 0;
	width: 50px;
	padding: 5px;
	background: #fff;
}

.icon.logo img {
	width: 100%;
	height: auto;
	box-sizing: border-box;
	display: block;
}


/* ranking
---------------------------------------------*/
.tile .ranking {
	position: absolute;
	left: 0;
	top: 0;
	background: #ffe400;
	border: 4px solid #fff;
	border-width: 0 4px 4px 0;
	display: table;
	width: 30px;
	height: 30px;
	text-align: center;
	font-size: 120%;
	font-weight: bold;
}

.tile .ranking p {
	display: table-cell;
	vertical-align: middle;
	padding-top: 3px;
	line-height: 1;
}
.icon.ranking {
	position: absolute;
	left: 0;
	top: 0;
	background: #ffe400;
	border: 4px solid #fff;
	border-width: 0 4px 4px 0;
	display: table;
	width: 30px;
	height: 30px;
	text-align: center;
	font-size: 120%;
	font-weight: bold;
}



/* login
---------------------------------------------*/
form p .dspInlBlk {
	width: 100px;
	text-align: left;
}



#main form input {
	border: 1px solid #d4d4d4;
    line-height: 24px;
    padding: 5px;
    vertical-align: middle;
}
#main form input[type="radio"],
#main form input[type="checkbox"] {
  width: auto;
  margin: 5px;
}
#main form select {
	border: 1px solid #d4d4d4;
}
#main form textarea {
	border: 1px solid #d4d4d4;
}

#main form .btn.signup a {
	line-height: 30px;
	font-size: 100%;
}

#main form .check {
	width: auto;
}
#main form .btn.login {
	margin: 15px auto 0;
	width: 90%;
}

#main form .btn.login a {
	display: inline-block;
	padding: 5px 0;
	width: 100%;
}

#main .dspTbl {
	width: 100%;
}


/* .account  */



.account .dspTbl a:hover {
}

.account .dspTbl input[type=checkbox] {
	display: block;
	position: absolute;
}

.account .dspTbl a span {
	display: block;
}

/* tanki
---------------------------------------------*/
.tanki {
	position: absolute;
	top: 3px;
	right: 3px;
	border-radius: 30px;
	background: url(../images/iconBgOr.png) no-repeat center center;
	width: 50px;
	height: 50px;
	text-align: center;
	line-height: 1.2;
	color: #fff;
	font-weight: bold;
	font-size: 93%;
	display: table;
	overflow: hidden;
	border: 4px solid #fff;
}

.tanki p {
	padding-top: 3px;
	display: table-cell;
	vertical-align: middle;
}

.tanki span {
	display: block;
	font-size: 120%;
}

.access {
  margin-left: 10px;
	padding-left: 20px;
  position: relative;
  background:  url(../images/iconAccess.png) no-repeat left;
}

/* magazine icon
---------------------------------------------*/
.magazine {
	display: flex;
	-js-display: flex;
	position: absolute;
	bottom: 0;
	width: 100%;
	box-sizing: border-box;
	margin: 2px;
}
.tile li .magazine li,
.icon.magazine li {
	width: 13%;
	min-width: 22px;
	border-radius: 20px;
	border: 3px solid #fff;
	box-sizing: border-box;
	margin: 1px;
}
.tile li .magazine li img,
.icon.magazine li img {
	width: 100%;
  display: block;
}

.magazine .days {
	background: #e14138;
}
.magazine .young {
	background: #41b400;
}
.magazine .morning {
	background: #0091c8;
}
.magazine .afternoon {
	background: #ff8700;
}
.magazine .evening {
	background: #c041aa;
}
.magazine .kiss {
	background: #00adb2;
}
.magazine .belove {
	background: #ff5a9e;
}



/* icon
---------------------------------------------*/
.icon.continue {
	display: inline-block;
	background: #ffe400;
	padding: 3px 5px;
	font-weight: normal;
	font-size: 1rem;
	margin: 0 10px;
}


.icon.finish {
	display: inline-block;
	background: #f32e00;
	padding: 3px 5px;
	font-weight: normal;
	font-size: 1rem;
	margin: 0 10px;
	color: #fff;
}


/* offer
---------------------------------------------*/

.offer li {
}

.offer .dspTbl dd.editor {
	width: 56px;
	text-align: center;
	font-size: 93%;
	padding-left: 10px;
}

.offer .dspTbl dt {
	padding-left: 10px;
	background: url(../images/arrowLre.png) no-repeat right center;
	padding-right: 20px;
}

.offer .action {
	vertical-align: middle;
}
.offer .action .btn a {
	width: 150px;
	text-align: center;
}


/* pagenation */

.pagenation {
	text-align: center;
}

.pagenation ul {
	height: 31px;
	margin: auto;
  display: flex;
  justify-content: center;
  align-items:         stretch;
}

.pagenation li {
	width: 30px;
	background: #ddd;
	margin: 0 5px;
	border-radius: 5px;
  font-size: 110%;
  display: block;
  height: 37px;
}

.pagenation li a {
	display: block;
	padding: 7px 5px;
	line-height: 26px;
  height: 21px;
}

.pagenation li a:hover {
}

.pagenation li.active {
	background: #444;
}

.pagenation li.active a {
	color: #fff;
}

.pagenation li.interval {
	background: #fff;
	width: 20px;
	padding: 10px 0;
}

.pagenation li.first a,
.pagenation li.last a {
	background: #db4068;
	padding: 8px 0;
	border-radius: 5px;
}

.pagenation li.first,
.pagenation li.last{
	margin: 0;
	background: none;
	padding: 0;
	width: 30px;
	text-align: center;
}

.pagenation li.first img,
.pagenation li.last img{
	width: 10px;
	margin: 2px auto;
}
.pagenation li.first {
	padding-right: 5px;
}
.pagenation li.last {
	padding-left: 5px;
}

.pagenation li.previous,
.pagenation li.next {
	border: 1px solid #ccc;
	background: #fff;
	width: 60px;
}

.pagenation li img {
	display: block;
	margin: auto;
}


/* keyword
---------------------------------------------*/

.keyword li {
	float: left;
	margin-right: 30px;
	line-height: 2;
}



/* ranking
---------------------------------------------*/

.ranking li .img {
	position: relative;
}

.ranking .rank {
	position: absolute;
	left: 0;
	top: 0;
	background: #ffe400;
	border: 4px solid #fff;
	border-width: 0 4px 4px 0;
	display: table;
	width: 30px;
	height: 30px;
	text-align: center;
	font-size: 120%;
	font-weight: bold;
}

.ranking .rank p {
	display: table-cell;
	vertical-align: middle;
	padding-top: 3px;
	line-height: 1;
}


/* #author
---------------------------------------------*/
#author .author.dspFbx {
	margin: 0 100px;
	-webkit-justify-content: center; /* Safari */
  justify-content: center;
}





/* form ------*/

form .type1 .input01 {
	padding: 10px;
}

form .type1 dl {
	position: relative;
}

form .type1 textarea {
	height: 300px;
	box-sizing: border-box;
	padding: 10px;
	margin: 0;
}
form .type1 .err {
	position: relative;
	display: block;
}

form .type1 .err p {
	position: absolute;
	left:33%;
	top: -2.5em;
	font-size: 86%;
	font-weight: bold;
}


/* searchBox
---------------------------------------------*/


.searchBox.type1 input {
	border: 1px solid #444;
	width: 210px;
	box-sizing: border-box;
	padding: 5px;
}

.searchBox .bg01 {
}

.searchBox .bg01 button {
	padding: 5px;
	background: #444;
	width: 100%;
	border: none;
	color: #fff;
}



/* side
---------------------------------------------*/
#side {
	width: 300px;
	padding-bottom: 100px;
	vertical-align: top;
}

#side h2 {
	font-size: 120%;
	position: relative;
	margin-bottom: 10px;
	border-bottom: 3px solid #000;
	padding: 5px 0;
}

#side .btn.signup {
	width: 100%;
}

#side .bgW {
	border: 1px solid #b2e3ff;
}

#side .box .bgW {
	border-top: none;
}

#side .box h2 {
	background: #0066cc;
	color: #fff;
	font-weight: bold;
	font-size: 100%;
	padding: 9px 10px 8px 15px;
}

#side h2 span {
	padding-left: 15px;
	display: block;
	border-left: 5px solid #fff;
}
#side .tankiNew li {
}

#side .tankiNew .dspTbl dd.editor {
	width: 56px;
	text-align: center;
	font-size: 93%;
	padding-left: 10px;
}

#side .tankiNew .dspTbl dt {
	padding-left: 10px;
	background: url(../images/arrowLre.png) no-repeat right center;
	padding-right: 20px;
}



/* footer
---------------------------------------------*/
#toTop {
	clear:both;
	position: absolute;
	right: 0;
	bottom: -20Px;
	background: #ffe400;
	width: 80px;
	height: 80px;
	border-radius: 50px;
	display: table;
	
}

#toTop a {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	background: url(../images/arrowTbl.png) no-repeat center 20px;
	padding: 25px 0 10px;
	color: #000;
	font-weight: bold;
	line-height: 1;
	text-decoration: none;
	font-size: 110%;
}
#toTop a:hover {
	color: #fff;
}

#footer {
	clear: both;
	width: 100%;
	text-align: center;
  background: #000;
  color: #fff;
}

#footer .inner {
	padding: 20px 0;
}
#footer  ul {
  margin: auto;
}

#footer li {
	display: inline-block;
	padding-right: 10px;
}
#footer li:after {
	content: "|";
	margin-left: 10px;
}

#footer a {
  color: #fff;
}

#footer a:hover {
}

#footer .inner .fLeft {
	width: 270px;
}

#footer #fbox01 {
	width: 270px;
}

#footer #fbox02 {
	width: 245px;
	border-left: 1px solid #fff;
}

#footer #fbox03 {
	width: 245px;
	border-left: 1px solid #fff;
}

#footer #fbox04 {
	border-left: 1px solid #fff;
	position: relative;
}

#footer #fLink {
	background: #e5f3fd;
}

#footer #fLink .inner {
	font-size: 93%;
	padding: 10px 0;
}

#footer #fLink .inner a {
	color:#202020;
}

#footer #fLink .inner p#copy {
	position: absolute;
	right: 0;
	top: 10px;
}

#footer #fbox04 .social {
	position: absolute;
	right: 0;
	top: 0;
}

.social01,
.social02 {
	float: left;
	padding-left: 15px;
}



/* common
---------------------------------------------*/

.type1 button {
	background: #444;
	color: #fff;
	border-radius: 0 5px 5px 0;
	padding: 5px;
	background: #db4068;
  border-radius: 5px;
  border: none;
  padding: 5px 20px;
  cursor: pointer;
}

.btn{
}

.btn.c {
	margin: auto;
}

.btn a {
	display: inline-block;
	box-sizing: border-box;
	border-radius: 5px;
}

.btn a:hover {
	opacity: 0.7;
}

.btn a span {
	display: inline-block;
}

.btn.type1 a {
	position: relative;
	background: #9e7e1c !important;
	color: #fff !important;
	line-height: 1;
}

.btn.type1.big a {
	border-bottom: 4px solid #b83657;
	border-radius: 6px;
}


.btn.type2 a {
	background: #52acd1;
	color: #fff;
	line-height: 1;
	vertical-align: middle;
	font-size: 100%;
}


.btn.type2.big a {
	border-bottom: 4px solid  #4590af;
	border-radius: 6px;
}

.btn.type3 a {
	background: #ccc;
	color: #000;
	line-height: 1;
	vertical-align: middle;
	font-size: 100%;
}
.btn.type3.big a {
	border-bottom: 4px solid  #685196;
	border-radius: 6px;
}

.btn.type2 button {
	background: #ffe400;
	border: none;
	border-bottom: 3px solid #ffcc00;
	line-height: 30px;
	vertical-align: middle;
	border-radius: 3px;
	text-align: center;
	font-weight: bold;
	font-size: 110%;
	padding: 10px 20px;
}

.btn.type2.c button {
	margin: 0 auto;
}

.btn.type2 button:hover {
	opacity: 0.7;
}

.btn.type3 button {
	background: #444;
	border-bottom: 3px solid #222;
	line-height: 20px;
	vertical-align: middle;
	border-radius: 5px;
	text-align: center;
	color: #fff;
	font-weight: bold;
	font-size: 110%;
	padding: 5px 20px;
	margin: 0 auto;
}

.btn.type3 button:hover {
	opacity: 0.7;
}

.btn.type4 a {
	background: #fff;
	vertical-align: middle;
	padding: 2px 5px;
	display: inline-block;
  border-radius: 15px;
}


.btn.type4 a r {
}

.btn.type5 a {
	background: #ccc;
	vertical-align: middle;
	color: #fff;
	font-weight: bold;
	font-size: 100%;
	padding: 5px 15px;
	display: inline-block;
	line-height: 30px;
}

.btn.type6 a {
	position: relative;
	background: #ffe400 !important;
	color: #000 !important;
	font-weight: bold;
	padding: 15px 40px 12px;
	padding-left: 60px;
	line-height: 1;
}

.btn.type6 a:before {
	content: url(../images/arrowRbl.png);
	background: #fff;
	border-radius: 20px;
	width: 20px;
	height: 20px;
	display: block;
	position: absolute;
	left: 30px;
	top: 50%;
	margin-top: -10px;
	line-height: 1.1;
	box-sizing: border-box;
    padding-top: 2px;
  text-align: center;
}

.btn.type6.big a {
	border-bottom: 4px solid  #ffcc00;
	border-radius: 6px;
}


.btn.type7 a {
	position: relative;
	background: #ffe400 !important;
	color: #000 !important;
	font-weight: bold;
	padding: 15px 40px 12px;
	padding-left: 60px;
	line-height: 1;
}

.btn.type7 a:before {
	content: url(../images/arrowLbl.png);
	background: #fff;
	border-radius: 20px;
	width: 20px;
	height: 20px;
	display: block;
	position: absolute;
	left: 30px;
	top: 50%;
	margin-top: -10px;
	line-height: 1.4;
}

.btn.type7.big a {
	border-bottom: 4px solid  #ffcc00;
	border-radius: 6px;
}
.btn.small a {
	padding: 5px;
	line-height: 1;
}

/* arrow
---------------------------------------------*/
.arwType1OB span {
	display: inline-block;
	/*background: url(../images/arrowType1OB.png) no-repeat right center;*/
	padding-right: 20px;
}

.arwType2OR span {
	display: inline-block;
	/*background: url(../images/arrowType2OR.png) no-repeat left center;*/
	padding-left: 20px;
}
.arwR {
	position: relative;
	display: block;
}

.arwR span {
	display: block;
	padding-right: 25px;
  position: relative;
	height: 20px;
}

.arwR span:after {
	content:  url(../images/arrowR.png);
	width: 20px;
	height: 20px;
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	text-align: center;
}
.outbound span {
	background:  url(../images/iconOutbound.png) no-repeat right;
  padding-right: 30px;
}
.arwL {
	position: relative;
}

.arwL span {
	display: inline-block;
	padding-left: 20px;
}

.arwL span:after {
	content:  url(../images/arrowLbl.png);
	background: #ffe400;
	width: 15px;
	height: 15px;
	border-radius: 10px;
	line-height: 1.3;
	display: block;
	position: absolute;
	left: 0;
	top: 50%;
	margin-top: -8px;
	text-align: center;
}

.r .arwType2GR span {
	display: inline-block;
	background: url(../images/arrowType2GR.png) no-repeat right center;
	padding-right: 20px;
}


.arrowBR a span {
	display: inline-block;
	background: url(../images/arrowBR.png) no-repeat left center;
	padding: 10px;
	padding-left: 20px;
	font-weight: bold;
}

#main h2 .arrowWR a {
	color: #fff;
}

#main h2 .arrowWR a:hover {
	color: #fbbc05;
}

#main h2 .arrowWR a span {
	display: inline-block;
	background: url(../images/arrowWR.png) no-repeat left center;
	padding: 10px;
	padding-left: 20px;
	font-weight: bold;
}

.icon.close {
	display: inline-block;
	background: url(../images/iconClose.png) no-repeat left center;
	padding: 5px 10px;
	padding-left: 20px;
}

.ad {
	text-align: center;
}

.ad.wide p {
	width: 728px;
	height: 90px;
	background: #ccc;
	margin: 0 auto;
}

.attention {
	font-size: 79%;
	padding-left: 20px;
}

.attention a {
	color: #000;
}

.searchBtn {
	background: #0066cc;
	border-radius: 5px;
	text-align: center;
	display: block;
	padding: 5px;
}

.acdContent {
  display: none;
}

img.iconL {
	max-width: 120px;
	max-height: 120px;
}

ul.disc li {
	padding: 0em 25px 1em;
	list-style: disc;
}

ul.ul01 {
}

ul.ul01 li {
	padding: 10px 0;
  list-style-type: disc;
  margin-left: 20px;
}

ul.ul02 {
}

ul.ul02 li a {
	display: block;
	padding: 2px 0 5px 25px;
}
ul.ul02 li {
	position: relative;
}

ul.ul02 li:before {
	content: url(../images/arrowRbl.png);
	background: #ffe400;
	border-radius: 15px;
	width: 15px;
	height: 15px;
	position: absolute;
	text-align: center;
	top: 50%;
	margin-top: -10px;
	padding: 1px 0 1px 3px;
	line-height: 1.2;
}

ul.ul03 li a {
	background: url(../images/arrowType2GrR.png) no-repeat left 6px;
	display: block;
	padding: 3px 0 3px 15px;
}

dl .dl01,
.dl01 {
	display: flex;
	-js-display: flex;
	height: 2.5em;
	line-height: 1.3;
	width: 100%;
	margin-bottom: 30px;
  align-items: center;
}

dl .dl01 dt,
.dl01 dt {
	width: 25%;
	vertical-align: middle;
  background: #fff;
  color: #3d3d3d;
  text-align: left;
}
.dl01 dd {
	vertical-align: middle;
	padding-left: 15px;
}

.dl01 a {
	margin: 10px;
	padding-left: 0;
	display: block;
	vertical-align: middle;
	position: relative;
	color: #444;
	
}

#main form .dl01 input[type="text"] {
  width: auto;
}

.dl02 {
	display: flex;
	-js-display: flex;
  align-items: stretch;
	line-height: 1.3;
	width: 100%;
	margin: 0 auto 30px;
  vertical-align: middle;
}

.dl02 dt {
  display: flex;
  align-items: center;
  justify-content: center;
	vertical-align: middle;
	background: #000;
	color: #fff;
  width: 33%;
}
.dl02 dt span {
  align-items: center;
  display: block;
  text-align: center;
}

.dl02 dd {
	vertical-align: middle;
  width: 67%;
  text-align: left;
}

.dl02 a {
	margin: 10px;
	padding-left: 0;
	display: block;
	vertical-align: middle;
	position: relative;
	color: #444;
	
}

.dl03 {
	display: flex;
	-js-display: flex;
	height: 2.5em;
	line-height: 1.3;
	clear: both;
	width: 100%;
	margin-bottom: 10px;
}

.dl03 dt {
	width: 33%;
	padding: 0 10px;
	display: table-cell;
	vertical-align: middle;
	background: #eee;
	border-bottom: 1px solid #444;

}
.dl03 dd {
	padding: 0 10px;
	display: table-cell;
	vertical-align: middle;
	border-bottom: 1px solid #444;
}


.dl04 {
	display: table;
	height: 2.5em;
	line-height: 1.3;
	width: 100%;
	margin: 0 auto 30px;
}

.dl04 dt {
	width: 33%;
	display: table-cell;
	vertical-align: middle;
	background: #444;
	color: #fff;

}
.dl04 dd {
	display: table-cell;
	vertical-align: middle;
}

.dl04 a {
	margin: 10px;
	padding-left: 0;
	display: block;
	vertical-align: middle;
	position: relative;
	color: #444;
	
}

.dl05 {
	display: table;
	height: 2.5em;
	line-height: 1.3;
	width: 500px;
	margin: 0 auto 30px;
}

.dl05 dt {
	width: 33%;
	display: table-cell;
	vertical-align: middle;
	background: #444;
	color: #fff;

}
.dl05 dd {
	display: table-cell;
	vertical-align: middle;
}

.dl05 a {
	margin: 10px;
	padding-left: 0;
	display: block;
	vertical-align: middle;
	position: relative;
	color: #444;
	
}

.table01 {
	border: 1px solid #000;
	border-width: 1px 1px 0 0;
}

.table01 th,
.table01 td {
	border: 1px solid #000;
	border-width: 0 0 1px 1px;
  padding: 10px;
}

.table01 th {
	text-align: center;
	background: #ccc;
}



.table02 {
	width: 100%;
	border: 1px solid #0066cc;
	border-width: 1px 1px 0 0;
}

.table02 th,
.table02 td {
	border: 1px solid #0066cc;
	border-width: 0 0 1px 1px;
	padding: 10px;
}

.table02 th {
	background: #E7F3FF;
	text-align: left;
}

.border01 {
	border-top: 2px solid #d1d1d1;
}

.border02 {
	border: 2px solid #d1d1d1;
}

.border03 {
	border: 2px solid #000;
}

.border04 {
	border-bottom: 5px solid #000;
}

.border05 {
	border-bottom: 1px solid #000;
}

.border06 {
	border-bottom: 1px solid #efefef;
}

.border07 {
	border-bottom: 1px solid #ccc;
}
.radio {
}

.bg01 {
	background: #52acd1;
}

.bg02 {
	background: #eee;
}

.bg03 {
	background: #f6f4ea;
}

.bg04 {
	background: #ede8cc;
}

.bgW {
	background: #fff;
}


.frame01 {
	border: 2px solid #000;
}
.frame01 h3 {
	background: #ededed;
	border-bottom: 0!important;
	padding: 10px 20px;
}
.frame01 h4 {
	border-bottom: 2px solid #000;
	font-size: 1rem;
}

.color1 {
	color: #52acd1;
}

.color2 {
	color: #db4068;
}

.color3 {
	color: #f7902c;
}

.color4 {
	color: #c00;
}

.color5 {
	color: #616cda;
}

.colorF {
	color: #fff;
}


#main .list > li {
  padding: 35px;
  margin-bottom: 30px;
  text-align: center;
}
#main .list li ul {
  display: flex;
  justify-content: center;
  margin: 10px auto 0;
}
#main .list li a {
  background: #000;
  color: #fff;
  display: block;
  padding: 10px 20px;
  margin: 0 10px;
}

/*        STEP       */

.step ol {
  display: flex;
  justify-content: center;
  align-items: stretch;
  font-size: 120%;
  background: #ede8cc;
}
.step li {
  margin-right: 0;
  text-align: center;
  width: 34%;
  position: relative;
  line-height: 50px;
  list-style-position: inside;
  border-left: 1px solid #fff;
  border-right: 1px solid #fff;
  position: relative;
  z-index: 10;
}

.step li:first-child,
.step li.active{
  border-left: none;
  border-right: none;
}

.step li:last-child,
.step li.active:last-child{
  margin-right: 0;
  border-left: none;
  border-right: none;
}
.step li.active:last-child{
  border-left: 1px solid #ede8cc;
  margin-left: -1px;
}
.step li.active {
  background: #52acd1;
  color: #fff;
  z-index: 20;
}

.step li.active:before {
  content: "";
  position: absolute;
left: 0;
  margin-right: -45px;
box-sizing: border-box;
width: 50px;
height: 50px;
border: 25px solid transparent;
border-left: 20px solid #ede8cc;
  width: 30px;
}
.step li.active:first-child:before {
  content: none;
}

.step li.active:after {
  content: "";
  position: absolute;
right: 0;
  margin-right: -45px;
box-sizing: border-box;
height: 50px;
border: 25px solid transparent;
border-left: 20px solid #52acd1;
}
.step li.active:last-child:after {
  content: none;
}

.step h3 {
  line-height: 50px;
}




/*        FAQ       */

dl.faq dt {
  font-weight: bold;
}
dl.faq dt span {
  color: #52acd1;
  margin-right: 5px;
}

dl.faq dd {
  margin-bottom: 20px;
}

dl.faq dd span {
	color: #db4068;
  font-weight: bold;
  margin-right: 5px;
}

