@charset "Shift_JIS";

/*  System common
-----------------------------------------------------------------------------*/
/* Form */
span.error {
    font-size: 12px;
    font-weight: bold;
    color: #bb2329;
}

input.error, textarea.error {
    background: #ffd2d2;
}

.w_s {
    width: 70px;
}

.w_m {
    width: 155px;
}

.w_l {
    width: 200px;
}

.w_ll {
    width: 275px;
}

.icon_ok, .icon_ng {
    font-size: 12px;
    color: #ff3c3c;
    margin: 0 10px;
}

p.icon_ok, p.icon_ng {
    margin: 0;
}

.icon_ng img {
    vertical-align: middle;
    margin: 0 5px 0 0;
}

.require {
    color: #ff3a20;
}

/*.archive01 */
#side_r .archive01 dt {
    padding: 0 0 8px;
    border-bottom: solid 1px #E1E1E1;
}

#side_r .archive01 dd {
    font-size: 12px;
    line-height: 18px;
    border-bottom: dotted 1px #E1E1E1;
    position: relative;
}

#side_r .archive01 dd a {
    text-decoration: none;
    padding: 10px 0 10px 30px;
    display: block;
}

#side_r .archive01 dd a:before {
    font: normal normal normal 10px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    font-size: inherit;
    color: #BEBEBE;
    top: 12px;
    left: 12px;
    content: "\f0da";
    position: absolute;
}

#side_r .archive01 dd a:hover:before {
    font-weight: bold;
    color: #1dbee5;
    display: inline-block;
}

.sp_archive {
    display: none;
}

/* sort */
#sort {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    border: solid 1px #e7e7e7;
    width: 970px;
    clear: both;
}

#sort:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#sort p {
    padding: 10px 15px;
    float: left;
}

#sort dl {
    padding: 10px 15px;
    float: right;
}

#sort dt, #sort dd {
    display: inline-block;
}

#sort a {
    text-decoration: none;
}

#sort a i {
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    color: #fff;
    padding: 2px 4px;
    display: inline-block;
    background: #1dbee5;
}

#sort a strong {
    padding: 0 0 0 5px;
}

/*  Contact
-----------------------------------------------------------------------------*/
/* Form */
#form_base {;
}

/*  Topics
-----------------------------------------------------------------------------*/
/* entry */
#topics .entry {
    padding: 0 0 10px;
}

#topics .entry .data {
    border-top: solid 1px #E1E1E1;
    height: 30px;
    position: relative;
}

#topics .entry .data span {
    font-size: 10px;
    color: #fff;
    line-height: 20px;
    padding: 3px 5px 3px 7px;
    top: -1px;
    right: 0;
    display: inline-block;
    background: #1dbee5;
    position: absolute;
}

#topics .entry_title {
    font-weight: normal;
    padding: 0 10px;
}

#topics .entry_title a {
    color: #1dbee5;
}

#topics .entry_title a:hover {
    text-decoration: none;
}

#topics .entry_body:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#topics .entry_body {
    padding: 25px 15px 40px;
}

#topics .entry_body .pic {
    margin: 0 0 15px 15px;
    float: right;
}

/*  media
-----------------------------------------------------------------------------*/
/* list */
#media > div {
    padding: 0 15px;
    width: 940px;
    overflow: hidden;
}

#media h3 {
    margin: 30px 0 10px;
    border-bottom: none;
}

#media #pickup {
    padding: 0 0 20px;
    width: 1000px;
}

#media #pickup:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#media #pickup li {
    line-height: 18px;
    margin: 0 20px 0 0;
    width: 300px;
    float: left;
}

#media #pickup li a {
    text-decoration: none;
    display: block;
}

#media #pickup li img {
    width: 300px;
    height: auto;
}

#media #pickup li p {
    font-size: 12px;
    padding: 5px 20px 0 0;
}

#media #list {
    width: 1000px;
}

#media #list:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#media #list li {
    margin: 0 7px 6px 0;
    width: 230px;
    float: left;
}

#media #list li a {
    box-sizing: border-box;
    font-size: 12px;
    line-height: 18px;
    text-decoration: none;
    padding: 15px 20px;
    border: solid 1px #f3f3f3;
    display: block;
}

#media #list li img {
    -webkit-border-radius: 15px;
    -moz-border-radius: 15px;
    border-radius: 15px;
}

#media #list li p {
    padding: 5px 0 0;
}

#media #list li span {
    font-weight: bold;
    color: #1dbee5;
    padding: 0 5px 0 0;
}

/* zoom --------------------------------*/
#media_zoom .c_wrapper {
    padding: 10px 0 0;
}

#media_zoom .entry {
    padding: 0 0 10px;
}

#media_zoom .entry .data {
    border-top: solid 1px #E1E1E1;
    height: 30px;
    position: relative;
}

#media_zoom .entry .data span {
    font-size: 10px;
    color: #fff;
    line-height: 20px;
    padding: 3px 5px 3px 7px;
    top: -1px;
    right: 0;
    display: inline-block;
    background: #1dbee5;
    position: absolute;
}

#media_zoom .entry_title {
    font-size: 16px;
    font-weight: normal;
    font-weight: bold;
    color: #1dbee5;
    padding: 20px 30px 10px;
}

#media_zoom .entry_body:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#media_zoom .entry_body {
    padding: 25px 30px 0;
}

#media_zoom .entry_body .pic {
    margin: 0 0 15px 50px;
    float: right;
}

/* pics */
#media_zoom .entry_pics {
    box-sizing: border-box;
    padding: 40px 0 0 20px;
    width: 100%;
}

#media_zoom .entry_pics:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#media_zoom .entry_pics li {
    box-sizing: border-box;
    margin: 0 7px 14px;
    width: 295px;
    float: left;
}

#media_zoom .entry_pics li img {
    width: 100%;
}

/* youtube */
#media_zoom .entry_youtube {
    text-align: center;
    padding: 70px 0 0;
}

/* btn_area */
#media_zoom .btn_area {
    text-align: center;
    margin: 70px 0;
    padding: 30px 0 0;
    border-top: solid 1px #ccc;
}

#media_zoom .btn_area a {
    text-decoration: none;
}

/*  update
-----------------------------------------------------------------------------*/
#update .contents_l dt {
    color: #1dbee5;
    padding: 25px 10px 0;
    border-top: solid 1px #E1E1E1;
}

#update .contents_l dd {
    padding: 15px;
}

#update .contents_l dd li {
    padding: 0 0 5px 20px;
    position: relative;
}

#update .contents_l dd li:before {
    font: normal normal normal 9px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    color: #1dbee5;
    top: 4px;
    left: 0;
    content: "\f04b";
    position: absolute;
}

/*  fortunetellers
-----------------------------------------------------------------------------*/
#fortunetellers .c_wrapper {
    border-bottom: solid 50px #fff;
}

#fortunetellers .contents_r {
    width: 710px;
}

#fortunetellers #side_l {
    width: 220px;
}

#fortunetellers h3 {
    font-size: 20px;
    color: #1dbee5;
    padding: 10px 15px;
}

#fortunetellers h3 span {
    font-size: 10px;
    font-weight: normal;
    color: #999;
    display: block;
}

#fortunetellers .contents_r ul {
    border-bottom: solid 1px #e7e7e7;
    width: 720px;
    clear: both;
    padding-top: 15px;
}

#fortunetellers .contents_r ul:first-child {
    padding-top: 0;
}

#fortunetellers .contents_r ul:last-child {
    border-bottom: none;
}

#fortunetellers .contents_r ul:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#fortunetellers .contents_r ul li {
    border-top: solid 15px #fff;
    border-bottom: solid 15px #fff;
    width: 180px;
    float: left;
    position: relative;
}

#fortunetellers .contents_r ul li p.status_online,
#fortunetellers .contents_r ul li p.status_working,
#fortunetellers .contents_r ul li p.status_offline,
#fortunetellers .contents_r ul li p.status_close,
#fortunetellers .contents_r ul li p.status_event {
    position: absolute;
    top: -15px;
    left: 0;
}

#profile_bottom_2,
#profile_bottom {
    clear: both;
}

#fortunetellers .pageft,
#filter .pageft,
#filter25 .pageft,
#ranking .pageft,
#profile_bottom_2 .pageft,
#profile_bottom .pageft,
#shift .pageft,
#onephrase .pageft {
    padding: 0 0 50px;
    border-top: solid 1px #e7e7e7;
    width: 970px;
    clear: both;
    overflow: hidden;
}

#fortunetellers .pageft h3,
#filter .pageft h3,
#filter25 .pageft h3,
#ranking .pageft h3,
#profile_bottom h3,
#profile_bottom_2 h3,
#shift .pageft h3,
#onephrase .pageft h3 {
    font-size: 18px;
    font-weight: normal;
    color: #333;
    margin: 25px 0;
    padding: 0 0 0 12px;
    border-left: solid 8px #1dbee5;
    line-height: 28px;
}

#fortunetellers .pageft ul {
    width: 990px;
}

#fortunetellers .pageft ul:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#fortunetellers .pageft li {
    border-right: solid 20px #fff;
    float: left;
}

/* filter --------------------------------*/
#filter .contents {
    margin: 0 auto 40px;
    width: 860px;
}

#filter h3 {
    font-size: 20px;
    color: #1dbee5;
    padding: 10px 0;
}

#filter h3 span {
    font-size: 10px;
    font-weight: normal;
    color: #999;
    line-height: 14px;
    padding: 5px 0 0;
    display: block;
}

#filter .box {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    box-sizing: border-box;
    margin: 20px 0;
    border: solid 1px #ccc;
    clear: both;
}

#filter .box h4 {
    font-size: 16px;
    font-weight: bold;
    padding: 12px 15px 10px;
    border-bottom: solid 1px #ccc;
}

#filter .box ul {
    box-sizing: border-box;
    padding: 10px 20px;
    width: 100%;
    clear: both;
}

#filter .box ul:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#filter .box li {
    padding: 2px 0;
    float: left;
}

#filter .box label {
    white-space: nowrap;
}

#filter .box label span {
    letter-spacing: 0;
}

#filter .btn_area {
    text-align: center;
    padding: 10px 0 0;
}

#filter .btn_area .btn {
    font-size: 14px;
    margin: 0 10px;
    padding: 10px 0;
    width: 100px;
}

#filter #filter1 li {
    width: 272px;
}

#filter #filter2 li {
    width: 136px;
}

#filter #filter3 li {
    width: 110px;
}

#filter #filter4 {
    width: 100%;
}

#filter #filter4:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#filter #filter4 ul {
    width: 95px;
    clear: none;
    float: left;
}

#filter #filter4 li {
    float: none;
}

#filter #filter5 li {
    width: 116px;
}

#filter .pageft ul {
    width: 990px;
}

#filter .pageft ul:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#filter .pageft li {
    border-right: solid 20px #fff;
    float: left;
}

/* filter --------------------------------*/
#filter25 .contents {
    margin: 0 auto 40px;
    width: 860px;
    position: relative;
}

#filter25 h3 {
    font-size: 20px;
    color: #1dbee5;
    padding: 10px 0;
}

#filter25 h3 span {
    font-size: 10px;
    font-weight: normal;
    color: #999;
    line-height: 14px;
    padding: 5px 0 0;
    display: block;
}

#filter25 .contents .count_box {
    padding: 10px 0 0;
    width: 220px;
    top: 100px;
    right: 0;
    position: absolute;
}

#filter25 .contents .count_box p {
    font-weight: bold;
    color: #1dbee5;
    text-align: center;
}

#filter25 .contents .count_box span {
    font-size: 80px;
    line-height: 82px;
}

#filter25 .contents .count_box ul {
    padding: 10px 0 0;
}

#filter25 .contents .count_box li {
    padding: 10px 0 0;
}

#filter25 .contents .count_box input {
    box-sizing: border-box;
    text-align: center;
    padding: 8px 10px;
    width: 100%;
    display: block;
}

#filter25 .box {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    box-sizing: border-box;
    margin: 20px 0;
    border: solid 1px #ccc;
    width: 600px;
    clear: both;
}

#filter25 .box h4 {
    font-size: 16px;
    font-weight: bold;
    padding: 12px 15px 10px;
    border-bottom: solid 1px #ccc;
}

#filter25 .box ul {
    box-sizing: border-box;
    padding: 10px 20px;
    width: 100%;
    clear: both;
}

#filter25 .box ul:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#filter25 .box li {
    padding: 2px 0;
    float: left;
}

#filter25 .box label {
    white-space: nowrap;
}

#filter25 .box label span {
    letter-spacing: 0;
}

#filter25 .btn_area {
    text-align: center;
    padding: 10px 0 0;
}

#filter25 .btn_area .btn {
    font-size: 14px;
    margin: 0 10px;
    padding: 10px 0;
    width: 100px;
}

#filter25 #filter1 li {
    width: 272px;
}

#filter25 #filter2 li {
    width: 136px;
}

#filter25 #filter3 li {
    width: 110px;
}

#filter25 #filter4:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#filter25 #filter4 ul {
    width: 64px;
    clear: none;
    float: left;
}

#filter25 #filter4 li {
    float: none;
}

#filter25 #filter5 li {
    width: 90px;
}

#filter25 .pageft ul {
    width: 990px;
}

#filter25 .pageft ul:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#filter25 .pageft li {
    border-right: solid 20px #fff;
    float: left;
}

#filter25 .clear_box {
    text-align: right;
    padding: 10px 10px 0 0;
    clear: both;
}

#filter25 .clear_box input:hover {
    cursor: pointer;
}

/* ranking --------------------------------*/
#ranking #side_l {
    padding: 0 0 30px;
    width: 220px;
}

#ranking #side_l dd strong {
    padding: 15px 0 5px;
    display: block;
}

#ranking #side_l dd strong:first-child {
    padding-top: 5px;
}

#ranking .ranking_type {
    font-size: 16px;
    color: #1dbee5;
}

#ranking h3 {
    font-size: 26px;
    color: #1dbee5;
    line-height: 30px;
    padding: 10px;
}

#ranking h3 span {
    font-size: 10px;
    font-weight: normal;
    color: #999;
    display: block;
}

#ranking .side_nav {
    border-radius: 5px;
    margin: 0 0 10px;
    border: solid 1px #ccc;
}

#ranking .side_nav span {
    font-size: 12px;
    color: #1dbee5;
    letter-spacing: 0;
    margin: 0 0 0 5px;
}

#ranking .side_nav dt {
    border-radius: 5px;
    font-weight: bold;
    color: #333;
    text-decoration: none;
    padding: 10px 20px;
    display: block;
    background: #fff;
    position: relative;
}

#ranking .side_nav dd {
    padding: 20px 10px 20px 20px;
    border-top: solid 1px #ccc;
}

#ranking .side_nav dd li {
    padding: 2px 0;
}

#ranking .side_nav dd input[type="radio"] {
    display: none;
}

#ranking .side_nav dd label {
    padding: 0 0 0 20px;
    background: url(../../images/radio_off.png) no-repeat 0 2px;
}

#ranking .side_nav dd label.radio_on {
    background: url(../../images/radio_on.png) no-repeat 0 2px;
}

#ranking #side_tel p {
    font-size: 14px;
    padding: 0;
}

#ranking .contents_r > p {
    font-weight: bold;
    padding: 0 10px 15px;
    border-bottom: solid 1px #e8e8e8;
}

#ranking .contents_r li {
    padding: 15px 0;
    border-top: solid 1px #e8e8e8;
    width: 100%;
}

#ranking .contents_r li:first-child {
    border: none;
}

#ranking .contents_r li:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#ranking .contents_r li > span {
    font-weight: bold;
    text-align: center;
    padding-top: 40px;
    width: 55px;
    display: block;
    float: left;
}

#ranking .contents_r li:nth-child(1) .rank_num {
    background: url(../../images/rank/rank01.png) no-repeat 7px 0;
    background-size: 40px;
}

#ranking .contents_r li:nth-child(2) .rank_num {
    background: url(../../images/rank/rank02.png) no-repeat 7px 0;
    background-size: 40px;
}

#ranking .contents_r li:nth-child(3) .rank_num {
    background: url(../../images/rank/rank03.png) no-repeat 7px 0;
    background-size: 40px;
}

#ranking .contents_r li:nth-child(4) .rank_num {
    background: url(../../images/rank/rank04.png) no-repeat 7px 0;
    background-size: 40px;
}

#ranking .contents_r li:nth-child(5) .rank_num {
    background: url(../../images/rank/rank05.png) no-repeat 7px 0;
    background-size: 40px;
}

#ranking .contents_r li:nth-child(6) .rank_num {
    background: url(../../images/rank/rank06.png) no-repeat 7px 0;
    background-size: 40px;
}

#ranking .contents_r li:nth-child(7) .rank_num {
    background: url(../../images/rank/rank07.png) no-repeat 7px 0;
    background-size: 40px;
}

#ranking .contents_r li:nth-child(8) .rank_num {
    background: url(../../images/rank/rank08.png) no-repeat 7px 0;
    background-size: 40px;
}

#ranking .contents_r li:nth-child(9) .rank_num {
    background: url(../../images/rank/rank09.png) no-repeat 7px 0;
    background-size: 40px;
}

#ranking .contents_r li:nth-child(10) .rank_num {
    background: url(../../images/rank/rank10.png) no-repeat 7px 0;
    background-size: 40px;
}

#ranking .contents_r .prof_img {
    width: 135px;
    height: auto;
    float: left;
}

#ranking .contents_r .prof_thumb {
    padding: 0 30px 0 20px;
    float: left;
}

#ranking .contents_r .prof_thumb strong {
    padding-top: 0;
}

#ranking .contents_r .prof_thumb .subtext.yomi {
    margin-bottom: 6px;
}

#ranking .contents_r li p:last-child {
    width: 335px;
    float: left;
}

#ranking .contents_r li p:last-child span {
    font-size: 11px;
    line-height: 18px;
    padding: 10px 0 0;
    display: block;
}

#ranking .pageft ul {
    width: 990px;
}

#ranking .pageft ul:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#ranking .pageft li {
    border-right: solid 20px #fff;
    float: left;
}

/*  zoom --------------------------------*/
#view_count {
    border-radius: 8px 8px 0 0;
    -webkit-box-shadow: -1px -1px 2px #C5C5C5;
    -moz-box-shadow: -1px -1px 2px #C5C5C5;
    box-shadow: -1px -1px 2px #C5C5C5;
    font-size: 12px;
    padding: 5px 15px;
    z-index: 10;
    right: 30px;
    bottom: 0;
    background: #FEF5F9;
    position: fixed;
}

/* onephrase */
.onephrase_area {
    border-radius: 20px;
    text-align: left;
    margin: 0 0 40px;
    padding: 20px;
    border: 2px solid #1dbee5;
    min-height: 160px;
    background: url(../../images/onephrase.png) no-repeat right bottom #fff;
    position: relative;
}

.onephrase_area dl {
    position: relative;
}

.onephrase_area dt {
    width: 160px;
    height: 160px;
    position: absolute;
}

.onephrase_area dd {
    box-sizing: border-box;
    padding: 20px 0 30px 230px;
    width: 730px;
    min-height: 160px;
}

.onephrase_area p {
    right: 215px;
    bottom: 20px;
    position: absolute;
}

.onephrase_area a {
    color: #1dbee5;
    text-align: right;
    text-decoration: none;
}

.onephrase_area a:hover {
    text-decoration: underline;
}

.onephrase_area i {
    padding: 0;
}

/* profile_top */
#profile_top #prof_info {
    font-weight: bold;
    padding: 0 0 15px 42px;
    min-height: 18px;
    background: url(../../images/icon_crown.gif) no-repeat 10px 0;
}

#profile_top #prof_photo {
    width: 350px;
    float: left;
}

#profile_top #prof_photo #main_slide {
    padding-bottom: 10px;
}

#profile_top #prof_photo #main_thumb {
    padding-bottom: 10px;
    display: flex;
}

#profile_top #prof_photo #main_thumb li {
    margin-right: 8px;
}

#profile_top #prof_outline {
    width: 580px;
    float: right;
}

#profile_top #prof_outline #name {
    padding: 20px 0;
    position: relative;
}

#profile_top #prof_outline #name h3 {
    font-family: "qMmΎ© ProN W3", "HiraMinProN-W3", "HGΎ©B", "lr oΎ©", "MS PMincho", "MS Ύ©", serif;
    font-size: 30px;
    font-weight: normal;
    color: #666;
    line-height: 32px;
    padding: 0 0 20px;
}

#profile_top #prof_outline #name h3 strong {
    font-size: 38px;
    font-weight: normal;
    color: #1dbee5;
    padding: 0 10px 0 0;
}

#profile_top #prof_outline #name h3 .yomi {
    font-family: sans-serif;
    font-size: 14px;
    color: #000;
    padding: 5px 5px 0;
    display: block;
}

#profile_top #prof_outline #name ul {
    width: 400px;
}

#profile_top #prof_outline #name ul:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#profile_top #prof_outline #name li {
    border-right: solid 15px #fff;
    float: left;
}

#profile_top #prof_outline #audio {
    font-size: 12px;
    right: 0;
    bottom: 20px;
    position: absolute;
}

#profile_top #prof_outline #audio .audio_none {
    color: #999;
}

#profile_top #prof_outline .box {
    padding: 20px 0 30px;
}

#profile_top #prof_outline #status.box {
    display: flex;
}

#profile_top #prof_outline #status.box > div {
    margin-left: 14px;
    width: 360px;
}

#profile_top #prof_outline .box .note {
    font-size: 12px;
    color: #999;
    padding: 10px 0 0;
}

#profile_top #prof_outline .box h4 {
    font-size: 16px;
    font-weight: bold;
    color: #1dbee5;
    padding: 0 0 10px;
}

#profile_top #prof_outline #status p {
    font-size: 12px;
}

#profile_top #prof_outline #status .entry_box p {
    font-size: 10px;
}

#profile_top #prof_outline #status .entry_box {
    padding: 15px 0 30px;
}

#profile_top #prof_outline #status > p {
    text-align: center;
    text-decoration: none;
    width: 103px;
    height: 103px;
    display: block;
    border-radius: 50%;
    padding: 31px 0;
    box-sizing: border-box;
    font-weight: bold;
    line-height: 1.25;
    font-size: 18px;
}

#profile_top #prof_outline #status > p.offline {
    padding: 20px 0;
}

#profile_top #prof_outline #status a img {
    vertical-align: middle;
}

#profile_top #prof_outline #status p.online {
    color: #333;
    background: #abe203;
}

#profile_top #prof_outline #status p.working {
    color: #fff;
    background: #ec3950;
}

#profile_top #prof_outline #status p.offline {
    color: #333;
    background: #58c7e2;
}

#profile_top #prof_outline #status p.offline span {
    color: #fff;
    display: block;
}

#profile_top #prof_outline #status .close,
#profile_top #prof_outline #status .close span {
    color: #666;
    background: #f2f2f2;
}

/* CxgQΑΜeLXg */
#profile_top #prof_outline #status .event {
    color: #fff;
    /*-webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    text-decoration: none;
    border: solid 1px #e14e13;
    background-color: #262626;
    margin-top: 20px;
    padding: 12px;*/
}

#profile_top #prof_outline #status .event a {
    color: #fff;
    background: #ff7d26;
    /*position: initial;
    outline: initial;
    padding: initial;
    text-align: initial;
    text-decoration: underline;
    width: initial;
    height: initial;
    top: initial;
    right: initial;
    display: initial;*/
}

#profile_top #prof_outline #status .event span {
    position: initial;
    color: #fff;
    outline: initial;
    padding: initial;
    text-align: initial;
    text-decoration: initial;
    width: initial;
    height: initial;
    top: initial;
    right: initial;
    display: initial;
}

/* entry */
#profile_top .entry_box {
    padding: 30px 0 10px;
}

#profile_top .entry_box:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#profile_top .entry_box .entry_st {
    font-weight: bold;
    color: #1dbee5;
    line-height: 18px;
    text-align: center;
    padding: 8px 0 7px;
    border: solid 1px #1dbee5;
    width: 70px;
    display: block;
    float: left;
}

#profile_top .entry_box .wait:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#profile_top .entry_box .wait div {
    text-align: center;
    border-top: solid 5px #fff;
    border-left: solid 7px #fff;
    float: left;
}

#profile_top .entry_box .wait div ul {
    height: 26px;
    display: inline-block;
}

#profile_top .entry_box .wait div.working {
    width: 46px;
}

#profile_top .entry_box .wait div.you {
    padding: 0 0 0 16px;
    background: url(../../images/icon_arr.png) no-repeat 0 7px;
    position: relative;
}

#profile_top .entry_box .wait div.working p {
    width: auto;
    background: #ef4242;
}

#profile_top .entry_box .wait div.no_waiting {
    color: #ccc;
}

#profile_top .entry_box .wait div.no_waiting p {
    background: #ccc;
}

#profile_top .entry_box .wait div.you p {
    width: auto;
    background: #3cf;
}

#profile_top .entry_box .wait div.you strong {
    font-weight: normal;
    color: #666;
    text-align: left;
    width: 180px;
    top: 15px;
    left: 70px;
    display: block;
    position: absolute;
}

#profile_top .entry_box .wait div p {
    -webkit-border-radius: 15px;
    -moz-border-radius: 15px;
    border-radius: 15px;
    font-size: 10px;
    color: #fff;
    line-height: 12px;
    text-align: center;
    padding: 4px 6px;
    width: 130px;
    background: #666;
}

#profile_top .entry_box .wait ul:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#profile_top .entry_box .wait li {
    border-bottom: solid 2px #fff;
    min-width: 20px;
    float: left;
    white-space: nowrap;
}

#profile_top .entry_box .wait li.count {
    font-size: 12px;
    padding: 4px 8px 0;
}

#profile_top .entry_box .wait div.working li, #profile_top .entry_box .wait div.you li {
    text-align: center;
    width: 100%;
}

#profile_top .entry_box .tooltip {
    clear: both;
    position: relative;
}

#profile_top .entry_box .tooltip .tooltip_trig {
    font-size: 10px;
    line-height: 30px;
    text-decoration: none;
    padding: 3px 0 3px 20px;
    background: url(../../images/icon_question.gif) no-repeat left top;
}

#profile_top .entry_box .tooltip div {
    font-size: 10px;
    line-height: 18px;
    padding: 5px 10px;
    border: solid 1px #000;
    width: 260px;
    top: 10px;
    left: -275px;
    display: none;
    background: #fff;
    position: absolute;
}

#profile_top #prof_outline #status.box .tooltip_reserv {
    clear: both;
    width: 86px;
    position: relative;
}

#profile_top #prof_outline #status .tooltip_reserv .tooltip_trig {
    font-size: 10px;
    line-height: 14px;
    text-decoration: none;
    padding: 0 0 0 20px;
    min-height: 15px;
    background: url(../../images/icon_question.gif) no-repeat left top;
    border-radius: 0;
    width: 86px;
}

#profile_top .tooltip_reserv div {
    font-size: 10px;
    line-height: 18px;
    width: auto;
    z-index: 100;
    display: none;
    background: #fff;
    position: absolute;
    top: 8px;
    right: 80px;
}

#profile_top #entry.box {
    padding-top: 0;
    width: 570px;
    margin: 0 auto;
}

#profile_top #entry.box > div {
    display: flex;
    justify-content: space-between;
}

#profile_top .entry_btn,
#profile_schedule .entry_btn {
    text-decoration: none;
    color: #fff;
    background: #1dbee5;
    width: 560px;
    display: inline-block;
    padding: 14px 10px;
    border-radius: 5px;
    text-align: center;
    position: relative;
}

#profile_top .entry_btn {
    width: 320px;
}

#profile_top .entry_btn:after,
#profile_schedule .entry_btn:after {
    content: url(../../images/icon_arr_white.png);
    position: absolute;
    top: 30%;
    right: 5%;
}

#profile_top .entry_btn:hover,
#profile_schedule .entry_btn:hover {
    background: rgba(29, 190, 229, 0.7);
}

#profile_top #entry.box #entry_nav {
    justify-content: center;
    align-items: center;
    margin-top: 20px;
    padding: 18px;
    background-color: #f2f2f2;
    border: solid 1px #e6e6e6;
    border-radius: 5px;
}

#profile_top #entry_nav p {
    line-height: 18px;
}

#profile_top #entry_nav img:first-child {
    width: 50px;
    margin-right: 10px;
    display: block;
}

#profile_top #entry_nav img:last-child {
    width: 230px;
    display: block;
    margin-left: 35px;
}

#profile_top #schedule_list dl {
    padding: 10px 20px;
}

#profile_top #schedule_list dt {
    font-weight: bold;
}

#profile_top #schedule_list ul {
    padding: 0 0 20px;
}

#profile_top #schedule_list li {
    padding: 5px 0;
}

#profile_top #schedule_list li:before {
    font: normal normal normal 14px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    font-size: 12px;
    color: #ccc;
    padding: 0 10px;
    display: inline-block;
    content: "\f04b";
}

#profile_top #schedule_list li.current:before {
    color: #35cdff;
}

#profile_top #schedule_list li span {
    color: #999;
}

#profile_top #schedule_list p {
    text-align: center;
    padding: 0 0 30px;
}

#profile_top #entry_banner_2,
#profile_top #entry_banner {
    padding: 0 0 50px;
    clear: both;
    max-width: 580px;
    margin: 0 auto;
    text-align: center;
}

#profile_top #entry_banner a {
    text-decoration: none;
}

#profile_top #entry_banner img {
    max-width: 580px;
}

#profile_top #entry_banner span {
    font-size: 12px;
    display: block;
}

#profile_top .reputation_comment {
    font-weight: bold;
    margin-bottom: 30px;
}

#profile_top .reputation {
    font-size: 0;
    text-align: center;
}

#profile_top .reputation li {
    border-radius: 100%;
    box-sizing: border-box;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    vertical-align: top;
    margin: 0 9px;
    width: 120px;
    height: 120px;
    display: inline-block;
    background: #fff;
}

#profile_top .reputation li span {
    justify-content: center;
    align-items: center;
    height: 100%;
    display: flex;
}

.reputation .circle01 {
    border: 5px solid #ECD9EC;
}

.reputation .circle02 {
    border: 5px solid #F4EDD2;
}

.reputation .circle03 {
    border: 5px solid #F7FCD1;
}

.reputation .circle04 {
    border: 5px solid #FAF3A7;
}

.reputation .circle05 {
    border: 5px solid #E7F8F4;
}

.reputation .circle06 {
    border: 5px solid #D8F3ED;
}

.reputation .circle07 {
    border: 5px solid #EBFBBF;
}

.reputation .circle08 {
    border: 5px solid #F2C6CB;
}

.reputation .circle09 {
    border: 5px solid #FCF8C5;
}

.reputation .circle10 {
    border: 5px solid #F8D8DB;
}

.reputation .circle11 {
    border: 5px solid #F3E9F3;
}

.reputation .circle12 {
    border: 5px solid #FBCACC;
}

.reputation .circle13 {
    border: 5px solid #F0FAAD;
}

.reputation .circle14 {
    border: 5px solid #DAC9DA;
}

.reputation .circle15 {
    border: 5px solid #E9DCE9;
}

.reputation .circle16 {
    border: 5px solid #ECDFA2;
}

.reputation .circle17 {
    border: 5px solid #DAEDE8;
}

.reputation .circle18 {
    border: 5px solid #E4CBE4;
}

.reputation .circle19 {
    border: 5px solid #FDF2F4;
}

.reputation .circle20 {
    border: 5px solid #E8F782;
}

.reputation .circle21 {
    border: 5px solid #FDE6E7;
}

.reputation .circle22 {
    border: 5px solid #EBF5F2;
}

.reputation .circle23 {
    border: 5px solid #F9F3E1;
}

.reputation .circle24 {
    border: 5px solid #FCDCDE;
}

.reputation .circle25 {
    border: 5px solid #FDFBDD;
}

#profile_top .message {
    font-size: 14px;
    font-weight: bold;
    line-height: 26px;
    padding-left: 28px;
    position: relative;
}

#prof_outline .message > div {
    border: 2px solid #cdcdcd;
    border-radius: 10px;
    background: #f5f5f5;
    padding: 20px;
}

#profile_top .message::before {
    top: 20%;
    left: 2px;
    content: url(../../images/icon_hukidashi.png);
    position: absolute;
}

#profile_top .message .update {
    font-size: 10px;
    font-weight: normal;
    color: #9a9a9a;
    line-height: 12px;
    text-align: right;
    margin-top: 12px;
}

#profile_bottom .f_message .image, #profile_bottom .list {
    vertical-align: top;
    display: inline-block;
}

#profile_bottom .f_message .update {
    font-size: 10px;
    color: #9a9a9a;
    margin-bottom: 15px;
    background: url(../../images/icon_clock02.png) no-repeat;
    padding-left: 15px;
    text-align: left;
}

#profile_bottom .f_message .mes {
    border-radius: 10px;
    box-sizing: border-box;
    padding: 15px 20px 20px;
    width: 290px;
    background: #f3f3f3;
    position: relative;
    font-size: 15px;
    margin-right: 20px;
}

#profile_bottom .f_message .mes:last-child {
    margin-right: 0;
}

#profile_bottom .f_message .mes:before {
    content: "";
    border: 6px solid transparent;
    border-bottom: 24px solid #f3f3f3;
    position: absolute;
    top: -26px;
    left: 40px;
}

#profile_bottom .box.fukidashi .fr {
    margin-top: 15px;
}

#profile_bottom .box.fukidashi .btn {
    text-align: center;
    padding: 2px 0;
    width: 195px;
    display: block;
}

/* ribon */
#profile_ribon:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#profile_ribon {
    height: 181px;
}

#profile_ribon h4 {
    font-size: 16px;
    font-weight: bold;
    color: #1dbee5;
    padding: 20px 0;
}

#profile_ribon dl {
    padding: 0 50px 0 100px;
    width: 280px;
    float: left;
}

#profile_ribon .tel {
    background: url(../../images/illust_tel.png) no-repeat 20px 0;
}

#profile_ribon .web {
    background: url(../../images/illust_pc.png) no-repeat 20px 0;
}

#profile_ribon dt {
    padding: 0 0 5px;
}

#profile_ribon dt span {
    font-weight: bold;
    color: #35cdff;
    padding: 0 10px;
}

#profile_ribon dd span {
    font-size: 10px;
    color: #999;
    padding: 5px 0 0;
    display: block;
}

#profile_ribon dd .btn {
    text-align: center;
    padding: 2px 0;
    width: 260px;
    display: block;
}

#profile_ribon .phase2 {
    padding: 20px 0 0;
    width: 700px;
}

#profile_ribon .phase2 .tel {
    padding: 0 0 0 100px;
    position: relative;
}

#profile_ribon .phase2 .tel p {
    font-size: 16px;
    padding: 10px 0 0;
}

#profile_ribon .phase2 .tel span {
    font-size: 14px;
    color: #999;
}

#profile_ribon .phase2 .tel a {
    top: 0;
    left: 400px;
    position: absolute;
}

/* profile_bottom */
#profile_bottom .box {
    padding: 20px 0 30px;
}

/* timetable */
.timetable, .timetable table {
    border-collapse: collapse;
}

.timetable thead td {
    height: 35px;
    position: relative;
}

.timetable thead td span {
    font-size: 12px;
    line-height: 14px;
    text-align: center;
    width: 20px;
    height: 35px;
    right: -10px;
    bottom: 0;
    display: block;
    position: absolute;
}

.timetable thead td span:after {
    font: normal normal normal 14px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    font-size: 16px;
    color: #ccc;
    width: 20px;
    bottom: -5px;
    display: block;
    content: "\f0d7";
    position: absolute;
}

.timetable tbody th, .timetable tbody td {
    border: solid 1px #ccc;
}

.timetable tbody th {
    font-size: 12px;
    font-weight: normal;
    text-align: left;
    padding-left: 10px;
}

.timetable tbody td {
    text-align: center;
    padding: 2px;
    width: 26px;
    background: url(../../images/timetable_line.gif) repeat-y center top;
}

.timetable .ok, .timetable .ng {
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    text-indent: -9999px;
    width: 24px;
    height: 24px;
    display: block;
}

.timetable .right {
    margin: 0 0 0 auto;
}

.timetable .half {
    width: 12px;
}

.timetable .ok {
    border: solid 1px #1dbee5;
    background: #1dbee5;
}

.timetable .ng {
    background: #e3e3e3;
}

#profile_bottom .timetable table {
    margin: 0 auto;
    width: 750px;
}

#profile_bottom .timetable ul {
    padding-top: 20px;
    text-align: center;
}

#profile_bottom .timetable li {
    padding: 0 20px 0 0;
    display: inline-block;
}

#profile_bottom .timetable li i {
    border-radius: 5px;
    margin: 0 5px 0 0;
    width: 16px;
    height: 16px;
    display: inline-block;
}

#profile_bottom .timetable li {
    font-size: 10px;
}

#profile_bottom .timetable li span {
    color: #999;
}

#profile_bottom .cb {
    width: 970px;
}

#profile_bottom .cb:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#profile_bottom .cb .box {
    width: 450px;
}

#profile_bottom .star {
    text-align: left;
}

#profile_bottom .star th, #profile_bottom .star td {
    text-align: left;
    padding: 2px 10px 2px 0;
}

#profile_bottom .star th {
    font-weight: normal;
}

#profile_bottom .star th span {
    color: #1dbee5;
    text-decoration: none;
    margin: 0 0 0 5px;
}

#profile_bottom .star .on, #profile_bottom .star .off {
    text-indent: -9999px;
    width: 18px;
    height: 18px;
    display: inline-block;
}

#profile_bottom .star .on {
    background: url(../../images/star_on.png) no-repeat left top;
}

#profile_bottom .star .off {
    background: url(../../images/star_off.png) no-repeat left top;
}

#profile_bottom .crown_list dd {
    padding: 0 0 10px;
}

/* ΣθmΉο */

#profile_bottom .proftopic.favorite dd {
    width: 430px;
    margin-left: 10px;
    padding: 20px;
}

#profile_bottom .proftopic.favorite dd strong {
    font-family: "Georgia", "qMmΎ© ProN W3", "HiraMinProN-W3", "Hiragino Mincho Pro W3", "HGΎ©E", "lr oΎ©", "MS PMincho", "MS Ύ©", serif;
    font-size: 22px;
    font-weight: normal;
    margin-bottom: 8px;
    display: block;
}

#profile_bottom .proftopic.favorite dd span {
    padding: 15px 0 0;
    display: block;
}

#profile_bottom .proftopic.favorite dd p {
    padding: 20px 0 0;
}

#profile_bottom #movie {
    clear: both;
}

#profile_bottom #movie div {
    text-align: center;
    margin: 0 auto;
    padding: 0 0 20px;
}

#profile_bottom #recommend {
    width: 100%;
}

#profile_bottom #recommend:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#profile_bottom #recommend .fl {
    width: 450px;
}

#profile_bottom #recommend .fr {
    width: 470px;
}

#profile_bottom #recommend #link:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#profile_bottom #recommend #link .fl {
    width: 400px;
}

#profile_bottom #recommend #link dl {
    padding: 0 10px 0 0;
    position: relative;
}

#profile_bottom #recommend #link dt {
    letter-spacing: 0;
    position: absolute;
}

#profile_bottom #recommend #link dd {
    padding: 0;
}

#profile_bottom #recommend #link .fr {
    width: 320px;
}

#profile_bottom #snap {
    width: 100%;
    clear: both;
    position: relative;
}

#profile_bottom #snap #snap_carousel {
    box-sizing: border-box;
    padding: 0 30px;
    width: 100%;
}

#profile_bottom #snap .prev,
#profile_bottom #snap .next {
    background: #fff;
    position: absolute;
    top: 30%;
}

#profile_bottom #snap li {
    text-align: center;
    width: 220px;
    background: #f7f7f7;
    cursor: pointer;
}

#profile_bottom #snap .prev {
    border-radius: 0 8px 8px 0;
    left: 0;
}

#profile_bottom #snap .next {
    border-radius: 8px 0 0 8px;
    right: 0;
}

#profile_bottom #blog {
    padding: 0 0 50px;
    clear: both;
}

#profile_bottom #blog h4 {
    font-size: 16px;
    font-weight: bold;
    color: #1dbee5;
    padding: 0 0 5px;
    border-bottom: solid 1px #ccc;
}

#profile_bottom #blog dl {
    padding: 10px 0;
    position: relative;
}

#profile_bottom #blog dt {
    padding: 2px 0;
    position: absolute;
}

#profile_bottom #blog dd {
    padding: 2px 0 2px 180px;
}

#profile_bottom #blog p {
    padding: 0 0 0 15px;
    position: relative;
}

#profile_bottom #blog p:before {
    font: normal normal normal 14px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    font-size: 24px;
    color: #b58298;
    text-decoration: none;
    top: -3px;
    left: 0;
    display: block;
    content: "\f105";
    position: absolute;
}

#profile_bottom #voice:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#profile_bottom #voice dt {
    box-sizing: border-box;
    font-size: 10px;
    line-height: 18px;
    padding: 0 0 0 30px;
    min-height: 36px;
    background: url(../../images/icon_voice.gif) no-repeat left top;
    position: relative;
}

#profile_bottom #voice dt span {
    color: #999;
    right: 0;
    bottom: 0;
    position: absolute;
}

#profile_bottom #voice dd {
    font-size: 12px;
    padding: 10px 0;
}

#profile_bottom #voice dd span {
    font-size: 14px;
    font-weight: bold;
    padding: 5px 0 0;
    display: block;
}

#profile_bottom #voice dd span .btn {
    font-weight: normal;
    margin: 0 0 0 5px;
    padding: 0 10px;
    display: inline-block;
}

#profile_bottom #voice .fl p .btn {
    text-align: center;
    padding: 5px;
    width: 200px;
    display: inline-block;
}

#profile_bottom #voice .fr li {
    padding: 0 0 10px;
}

#profile_bottom #fortune_carousel {
    margin: 0 auto;
    width: 880px;
}

#profile_bottom #fortune_carousel li {
    position: relative;
    padding: 15px 20px 0;
}

#profile_bottom #fortune_carousel p.status_online,
#profile_bottom #fortune_carousel p.status_working,
#profile_bottom #fortune_carousel p.status_offline,
#profile_bottom #fortune_carousel p.status_close,
#profile_bottom #fortune_carousel p.status_event {
    position: absolute;
    top: 0;
    left: 0;
}

#profile_bottom_2 .pageft ul,
#profile_bottom .pageft ul {
    width: 990px;
}

#profile_bottom_2 .pageft ul:after,
#profile_bottom .pageft ul:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#profile_bottom_2 .pageft li,
#profile_bottom .pageft li {
    border-right: solid 20px #fff;
    float: left;
}

#profile_top .entry_order {
    margin: -5px 0 30px;
}

#profile_schedule .entry_order {
    text-align: center;
    margin-top: 25px;
}

#profile_top .entry_order p,
#profile_schedule .entry_order p {
    color: #fff;
    background: #999;
    border-radius: 1em;
    padding: 5px 11px 3px;
    display: inline-block;
    position: relative;
    white-space: nowrap;
}

#profile_top .entry_order p:before,
#profile_schedule .entry_order p:before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 11px 16px 11px;
    border-color: transparent transparent #999999 transparent;
    position: absolute;
    top: -15px;
    left: 64px;
}

#profile_top #prof_outline #status .entry_order p a {
    width: auto;
    height: auto;
    display: inline-block;
    border-radius: 0;
    padding: 0;
    font-weight: normal;
    line-height: initial;
    text-decoration: none;
    color: #fff;
}

#profile_schedule .entry_order p a {
    color: #fff;
    text-decoration: none;
}

#profile_top .entry_order p a:visited,
#profile_top .entry_order p a:hover,
#profile_schedule .entry_order p a:visited,
#profile_schedule .entry_order p a:hover {
    color: #fff;
    text-decoration: none;
}

#profile_top .entry_order p em,
#profile_schedule .entry_order p em {
    font-weight: bold;
    font-style: normal;
    margin: 0 2px;
}

/*  profile_schedule
-----------------------------------------------------------------------------*/
.schedule_box {
    margin: 0 auto 50px;
    width: 757px;
}

.schedule_box .profile_header {
    padding: 30px 0;
    position: relative;
}

.schedule_box .profile_header dt {
    position: absolute;
}

.schedule_box .profile_header dt img {
    width: 80px;
    height: auto;
}

.schedule_box .profile_header dd {
    padding: 20px 0 0 90px;
}

.schedule_box .profile_header dd p {
    font-size: 12px;
    font-weight: bold;
}

.schedule_box .profile_header dd h3 {
    font-size: 22px;
    font-weight: normal;
    color: #1dbee5;
    line-height: 24px;
    padding: 5px 0 2px;
}

.schedule_box .profile_header dd h3 img {
    margin: 0 10px 0 0;
}

.schedule_box .profile_header dd span {
    font-size: 10px;
    color: #888;
}

.schedule_box .schedule_tab ul {
    width: 100%;
}

.schedule_box .schedule_tab ul:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

.schedule_box .schedule_tab li {
    box-sizing: border-box;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    font-weight: bold;
    text-align: center;
    border: solid 2px #cecece;
    width: 235px;
    min-height: 94px;
    float: left;
    background: #f9f9f9;
}

.schedule_box .schedule_tab li:nth-child(2) {
    margin: 0 26px;
}

.schedule_box .schedule_tab li a, .schedule_box .schedule_tab li span {
    text-decoration: none;
    padding: 35px 0 0;
    display: block;
}

.schedule_box .schedule_tab li a {
    padding: 35px 0;
}

.schedule_box .schedule_tab li:hover {
    border-color: #1dbee5;
}

.schedule_box .schedule_tab li:hover a {
    color: #000;
}

.schedule_box .schedule_tab .current {
    border: solid 2px #1dbee5;
    background: #fff;
}

.schedule_box .schedule_tab .off {
    color: #a4a4a4;
}

/* entry */
.schedule_box .tab_contents {
    margin: 0 0 50px;
    padding: 30px 0 0;
    border-bottom: solid 1px #d0d0d0;
}

.schedule_box .tab_contents h4 {
    font-size: 14px;
    font-weight: normal;
    padding: 30px 0;
    border-top: solid 1px #d0d0d0;
    position: relative;
}

.schedule_box .tab_contents h4:before {
    font: normal normal normal 14px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    font-size: 12px;
    color: #ccc;
    padding: 0 10px;
    display: inline-block;
    content: "\f04b";
}

.schedule_box .tab_contents h4.current:before {
    color: #35cdff;
}

.schedule_box .tab_contents h4:first-child {
    border-top: none;
}

.schedule_box .tab_contents h4 span {
    color: #888;
    top: 30px;
    right: 0;
    position: absolute;
}

.schedule_box .entry_box {
    padding-bottom: 30px;
    display: flex;
    justify-content: space-between;
}

.schedule_box .entry_box .entry_st {
    font-weight: bold;
    color: #1dbee5;
    line-height: 18px;
    text-align: center;
    padding: 8px 0 7px;
    border: solid 1px #1dbee5;
    width: 70px;
    display: block;
    float: left;
}

.schedule_box .entry_box .wait {
    width: 288px;
}

.schedule_box .entry_box .wait:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

.schedule_box .entry_box .wait div {
    text-align: center;
    border-top: solid 5px #fff;
    border-left: solid 7px #fff;
    float: left;
}

.schedule_box .entry_box .wait div ul {
    height: 26px;
    display: inline-block;
}

.schedule_box .entry_box .wait div.working {
    width: 46px;
}

.schedule_box .entry_box .wait div.you {
    padding: 0 0 0 16px;
    background: url(../../images/icon_arr.png) no-repeat 0 7px;
    position: relative;
}

.schedule_box .entry_box .wait div.working p {
    width: auto;
    background: #ef4242;
}

.schedule_box .entry_box .wait div.no_waiting {
    color: #ccc;
}

.schedule_box .entry_box .wait div.no_waiting p {
    background: #ccc;
}

.schedule_box .entry_box .wait div.you p {
    width: auto;
    background: #3cf;
}

.schedule_box .entry_box .wait div.you strong {
    font-weight: normal;
    color: #666;
    text-align: left;
    width: 180px;
    top: 15px;
    left: 70px;
    display: block;
    position: absolute;
}

.schedule_box .entry_box .wait div p {
    -webkit-border-radius: 15px;
    -moz-border-radius: 15px;
    border-radius: 15px;
    font-size: 10px;
    color: #fff;
    line-height: 12px;
    text-align: center;
    padding: 4px 6px;
    width: 130px;
    background: #666;
}

.schedule_box .entry_box .wait ul:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

.schedule_box .entry_box .wait li {
    border-bottom: solid 2px #fff;
    min-width: 20px;
    float: left;
    white-space: nowrap;
}

.schedule_box .entry_box .wait li.count {
    font-size: 12px;
    padding: 4px 8px 0;
}

.schedule_box .entry_box .wait div.working li, .schedule_box .entry_box .wait div.you li {
    text-align: center;
    width: 100%;
}

/* timetable */
.schedule_box .timetable {
    padding: 20px 0 30px;
    border-top: none;
    position: relative;
}

.schedule_box .timetable h4 {
    font-size: 20px;
    color: #1dbee5;
    top: 0;
    left: 0;
    position: absolute;
}

.schedule_box .timetable h4 span {
    font-size: 12px;
    font-weight: normal;
    color: #a3a3a3;
    display: block;
}

.schedule_box .timetable table {
    margin: 0 0 15px;
    width: 100%;
}

.schedule_box .timetable li {
    padding: 0 20px 0 0;
    display: inline-block;
}

.schedule_box .timetable li i {
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    margin: 0 5px 0 0;
    width: 16px;
    height: 16px;
    display: inline-block;
}

.schedule_box .timetable li {
    font-size: 10px;
}

.schedule_box .timetable li span {
    color: #999;
}

/* btn_area */
.schedule_box .btn_area {
    text-align: center;
    padding: 40px 0 0;
    border-top: solid 1px #d0d0d0;
}

.schedule_box .btn_area .btn {
    padding: 8px 40px;
    display: inline-block;
}

/*  profile_voice
-----------------------------------------------------------------------------*/
.voice_box {
    margin: 0 auto;
    width: 757px;
}

.voice_box .profile_header {
    padding: 30px 0;
    min-height: 90px;
    position: relative;
}

.voice_box .profile_header dt {
    position: absolute;
}

.voice_box .profile_header dt img {
    width: 80px;
    height: auto;
}

.voice_box .profile_header dd {
    padding: 20px 0 0 90px;
}

.voice_box .profile_header dd p {
    font-size: 12px;
    font-weight: bold;
}

.voice_box .profile_header dd h3 {
    font-size: 22px;
    font-weight: normal;
    color: #1dbee5;
    line-height: 24px;
    padding: 5px 0 2px;
}

.voice_box .profile_header dd h3 img {
    margin: 0 10px 0 0;
}

.voice_box #voice_2,
.voice_box #voice {
    padding: 30px 0 0;
    border-top: solid 1px #d0d0d0;
    width: 100%;
}

.voice_box #voice_2:after,
.voice_box #voice:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

.voice_box #voice_2 .fl,
.voice_box #voice .fl {
    width: 580px;
}

.voice_box #voice_2 dl,
.voice_box #voice dl {
    padding: 15px 0 0 15px;
}

.voice_box #voice_2 dt,
.voice_box #voice dt {
    box-sizing: border-box;
    font-size: 10px;
    line-height: 18px;
    padding: 0 0 0 30px;
    min-height: 36px;
    background: url(../../images/icon_voice.gif) no-repeat left top;
    position: relative;
}

.voice_box #voice_2 dt span,
.voice_box #voice dt span {
    color: #999;
    right: 0;
    bottom: 0;
    position: absolute;
}

.voice_box #voice_2 dd,
.voice_box #voice dd {
    font-size: 12px;
    padding: 10px 0 40px;
}

.voice_box #voice_2 dd span,
.voice_box #voice dd span {
    font-size: 14px;
    font-weight: bold;
    padding: 5px 0 0;
    display: block;
}

.voice_box #voice_2 dd span .btn,
.voice_box #voice dd span .btn {
    font-weight: normal;
    margin: 0 0 0 5px;
    padding: 0 10px;
    display: inline-block;
}

.voice_box .pagenation {
    padding-top: 20px;
}

.voice_box .btn_area {
    text-align: center;
    padding: 40px 0;
    border-top: solid 1px #d0d0d0;
}

.voice_box .btn_area .btn {
    padding: 8px 40px;
    display: inline-block;
}

/*  schedule
-----------------------------------------------------------------------------*/
#shift #shift_header {
    padding: 25px 0 0;
    width: 970px;
}

#shift #shift_header:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#shift #shift_header #date {
    font-size: 18px;
    border-bottom: solid 20px #fff;
    float: left;
}

#shift #shift_header #date p {
    display: inline-block;
}

#shift #shift_header #date span, #shift #shift_header #date a {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    text-align: center;
    padding: 10px;
    border: solid 1px #e7e7e7;
    height: 20px;
    display: inline-block;
}

#shift #shift_header #date span {
    color: #ccc;
}

#shift #shift_header #date a i {
    padding: 0;
}

#shift #shift_header #date h3 {
    font-weight: bold;
    text-align: center;
    width: 260px;
    display: inline-block;
}

#shift #shift_header #update {
    text-align: right;
    border-bottom: solid 20px #fff;
    float: right;
}

#shift #shift_header #update span {
    padding: 0 0 0 20px;
    display: inline-block;
    background: url(../../images/icon_clock.png) no-repeat 0 2px;
}

#shift .timetable {
    padding: 0 0 50px;
    clear: both;
}

#shift .timetable table {
    margin: 30px 0 0;
    width: 970px;
}

#shift .timetable thead {
    color: #999;
}

#shift .timetable thead td {
    padding: 0 10px;
}

#shift .timetable thead td span {
    right: 0;
    left: -10px;
}

#shift .timetable tbody {
    line-height: 16px;
}

#shift .timetable tbody th {
    padding: 5px 0;
    position: relative;
}

#shift .timetable tbody th:nth-child(1) {
    border-right: none;
    width: 110px;
}

#shift .timetable tbody th:nth-child(2) {
    border-left: none;
    width: 180px;
}

#shift .timetable tbody th strong {
    font-size: 18px;
    line-height: 20px;
    text-align: center;
    width: 60px;
    display: inline-block;
}

#shift .timetable tbody th img {
    top: 5px;
    right: 15px;
    position: absolute;
}

#shift .timetable tbody th span {
    color: #999;
}

#shift .timetable tbody th p {
    text-align: center;
}

#shift .timetable tbody th a {
    text-decoration: none;
}

#shift .timetable tbody th:last-child {
    padding: 0;
}

#shift .timetable tbody th:last-child a {
    padding: 12px;
    display: block;
}

#shift .timetable tbody .current {
    background: #fee3ea;
}

#shift .timetable .ok, #shift .timetable .ng {
    height: 30px;
}

#shift .pageft ul {
    width: 990px;
}

#shift .pageft ul:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#shift .pageft li {
    border-right: solid 20px #fff;
    float: left;
}

/*  FAQ
-----------------------------------------------------------------------------*/
.search_box {
    text-align: center;
    padding: 20px;
    border: solid 1px #b3eaf8;
    background: #f3fdff;
    clear: both;
}

.search_box form {
    font-size: 16px;
}

.search_box form input:first-child {
    box-sizing: border-box;
    font-size: 16px;
    margin: 0 0 0 10px;
    border: solid 1px #ccc;
    width: 300px;
    height: 30px;
}

.search_box label {
    font-weight: bold;
}

.search_box label:before {
    font: normal normal normal 14px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    font-size: inherit;
    color: #1dbee5;
    padding: 0 5px 0 0;
    display: inline-block;
    content: "\f002";
}

.search_box input.btn {
    box-sizing: border-box;
    font-size: 16px;
    padding: 2px 20px;
    height: 30px;
    border: 2px solid #ccc;
}

.search_box span {
    font-size: 12px;
    color: #999;
    padding: 5px 0 0;
    display: block;
}

/*  faq --------------------------------*/
#faq #cat_nav {
    padding: 40px 0 0;
}

#faq #cat_nav ul {
    padding: 30px 0 0;
    width: 100%;
}

#faq #cat_nav ul:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#faq #cat_nav li {
    box-sizing: border-box;
    padding: 5px;
    width: 20%;
    float: left;
}

#faq #cat_nav li a {
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    padding: 50px 0;
    width: 100%;
    display: block;
    border: 2px solid #ccc;
    color: #666;
}

#faq .box {
    padding: 60px 0 0;
    width: 100%;
}

#faq .box:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#faq .box #rank {
    width: 45%;
    float: left;
}

#faq .box #rank dl {
    padding: 0 0 40px;
}

#faq .box #rank dt {
    font-weight: bold;
    padding: 20px 10px 0;
}

#faq .box #rank dd a {
    color: #1dbee5;
}

#faq .box #rank dd {
    padding: 8px 10px 20px 45px;
    border-bottom: dotted 1px #ccc;
    position: relative;
}

#faq .box #rank dd:before {
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    font-size: inherit;
    font-weight: bold;
    color: #fff;
    padding: 2px 8px;
    top: 5px;
    left: 10px;
    display: inline-block;
    background: #16bce4;
    content: "Q";
    position: absolute;
}

#faq .box #contact {
    width: 52%;
    float: right;
}

#faq .box #contact .telbox {
    text-align: center;
    margin: 20px 0 0;
    padding: 20px 0;
    border: solid 2px #b3eaf8;
}

#faq .box #contact .telbox .day {
    padding: 5px 0 0;
}

#faq .box #contact .telbox .other span {
    margin: 0;
}

/*  faq_list --------------------------------*/
#faq_list .contents_r {
    width: 710px;
}

#faq_list #side_l {
    width: 220px;
}

#faq_list .stitle a {
    color: #1dbee5;
    text-decoration: none;
}

#faq_list .stitle a:hover {
    text-decoration: underline;
}

#faq_list h4 {
    margin: 30px 0 10px;
}

#faq_list .box li {
    padding: 15px 10px 10px 45px;
    position: relative;
}

#faq_list .box li:before {
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    font-size: inherit;
    font-weight: bold;
    color: #fff;
    padding: 2px 8px;
    top: 13px;
    left: 10px;
    display: inline-block;
    background: #16bce4;
    content: "Q";
    position: absolute;
}

#faq_list #cat_nav {
    display: none;
}

#faq_list .search_box {
    margin: 40px 0 0;
}

.faq_btn {
    padding: 30px 0 20px;
}

.faq_btn .btn01 {
    padding: 5px 10px 5px 25px;
}

.faq_btn .btn01:before {
    right: auto;
    left: 10px;
    content: "\f0d9";
}

/*  faq_zoom --------------------------------*/
#faq_zoom .contents_r {
    width: 710px;
}

#faq_zoom #side_l {
    width: 220px;
}

#faq_zoom .stitle span {
    font-weight: normal;
}

#faq_zoom .stitle span:before {
    font: normal normal normal 14px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    font-size: inherit;
    color: #ccc;
    padding: 0 10px;
    content: "\f105";
}

#faq_zoom .stitle a {
    color: #1dbee5;
    text-decoration: none;
}

#faq_zoom .stitle a:hover {
    text-decoration: underline;
}

#faq_zoom .question {
    font-size: 16px;
    padding: 30px 0 0 40px;
    position: relative;
}

#faq_zoom .question:before {
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    font-size: inherit;
    font-weight: bold;
    color: #fff;
    padding: 4px 9px;
    top: 25px;
    left: 0;
    display: inline-block;
    background: #16bce4;
    content: "Q";
    position: absolute;
}

#faq_zoom .answer {
    font-size: 16px;
    line-height: 28px;
    padding: 20px 0 0 40px;
    position: relative;
}

#faq_zoom .answer:before {
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    font-size: inherit;
    font-weight: bold;
    color: #1dbee5;
    line-height: 20px;
    padding: 4px 9px;
    border: solid 1px #ccc;
    top: 19px;
    left: 0;
    display: inline-block;
    content: "A";
    position: absolute;
}

#faq_zoom .answer p {
    padding: 40px 0 10px;
}

#faq_zoom .answer p:first-child {
    padding: 0 0 10px;
}

#faq_zoom .answer img {
    margin: 0 auto;
    height: auto;
    max-width: 100%;
    display: block;
}

#faq_zoom #rank {
    padding: 40px 0 0;
}

#faq_zoom #rank li {
    padding: 15px 10px 0 40px;
    position: relative;
}

#faq_zoom #rank li:before {
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    font-size: inherit;
    font-weight: bold;
    color: #fff;
    padding: 2px 8px;
    top: 13px;
    left: 5px;
    display: inline-block;
    background: #16bce4;
    content: "Q";
    position: absolute;
}

#faq_zoom #contact {
    padding: 40px 0 0;
}

#faq_zoom #contact .telbox {
    text-align: center;
    margin: 20px 0 0;
    padding: 20px 0;
    border: solid 2px #b3eaf8;
}

#faq_zoom #cat_nav {
    display: none;
}

#faq_zoom .search_box {
    margin: 40px 0 0;
}

/*  voice
-----------------------------------------------------------------------------*/
#voice .box {
    margin: 0 auto;
    width: 970px;
}

#voice .box:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#voice .box > div {
    padding: 40px 0;
    width: 470px;
}

#voice .box > div:nth-child(odd) {
    float: left;
}

#voice .box > div:nth-child(even) {
    float: right;
}

#voice .box .user {
    min-height: 115px;
    position: relative;
}

#voice .box .user > p {
    position: absolute;
    top: 0;
    left: 0;
}

#voice .box .user > dl {
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    box-sizing: border-box;
    margin: 0 0 0 130px;
    padding: 15px;
    width: 340px;
    background: #1dbee5;
    color: #fff;
    position: relative;
}

#voice .box .user > dl:before {
    font: normal normal normal 16px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    font-size: 50px;
    color: #1DBEE5;
    content: "\f0d9";
    position: absolute;
    top: 30%;
    left: -15px;
}

#voice .box .user > dl > dt {
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    margin: 0 0 10px;
    padding: 2px 4px;
    display: block;
    background: #1dbee5;
    border-bottom: 1px solid;
}

#voice .box .answer {
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    box-sizing: border-box;
    margin: 15px 0 0 0;
    padding: 20px 20px 0;
    width: 470px;
    min-height: 185px;
    background: #e6faff;
    position: relative;
}

#voice .box .answer > p {
    right: 15px;
    bottom: 0;
    position: absolute;
}

#voice .box .answer > p img {
    vertical-align: top;
    margin: 15px 0 0;
}

#voice .box .answer > p a {
    text-decoration: none;
}

#voice .box .answer > p span {
    box-sizing: border-box;
    font-size: 12px;
    color: #fff;
    line-height: 18px;
    text-align: center;
    padding: 2px 5px;
    width: 140px;
    display: block;
    background: #1dbee5;
}

#voice .box .answer > dl {
    padding: 0 0 20px;
    width: 280px;
}

#voice .box .answer > dl > dt {
    font-size: 16px;
    font-weight: bold;
    color: #1dbee5;
    margin: 0 0 5px;
}

#voice .pagenation {
    padding-top: 20px;
}

#voice .navi {
    padding-bottom: 60px;
}

#voice .note {
    font-size: 16px;
    line-height: 26px;
    margin: 0 auto;
    padding-bottom: 80px;
    width: 720px;
}

#voice .qu_st {
    line-height: 42px;
    text-align: center;
    margin-bottom: 60px;
    border-top: 1px solid #ccc;
}

#voice .qu_st span {
    font-family: "qMmΎ© ProN W3", "HiraMinProN-W3", "HGΎ©E", "lr oΎ©", "MS PMincho", "MS Ύ©", serif;
    font-size: 22px;
    font-weight: normal;
    color: #fff;
    line-height: 42px;
    margin: 0 auto;
    width: 280px;
    display: block;
    background: #666;
}

#voice .outside h3 {
    font-family: "qMmΎ© ProN W3", "HiraMinProN-W3", "HGΎ©E", "lr oΎ©", "MS PMincho", "MS Ύ©", serif;
    font-size: 28px;
    font-weight: normal;
    text-align: center;
    margin-bottom: 80px;
}

#voice .outside h3 span {
    color: #1dbee5;
}

#voice .impression, #voice .comfort {
    margin-bottom: 80px;
    overflow: hidden;
}

#voice .impression ul {
    padding-bottom: 30px;
}

#voice .btn_more {
    font-family: "qMmΎ© ProN W3", "HiraMinProN-W3", "HGΎ©E", "lr oΎ©", "MS PMincho", "MS Ύ©", serif;
    border: 1px solid #ccc;
    width: 220px;
    background: #fff;
    float: right;
}

#voice .btn_more a {
    font-size: 22px;
    color: #1dbee5;
    line-height: 40px;
    text-align: center;
    text-decoration: none;
    display: block;
}

#voice .btn_more:hover {
    border: 1px solid #1dbee5;
}

#voice .impression .image, #voice .comfort .image {
    float: left;
}

#voice .impression .text, #voice .comfort .text {
    width: 460px;
    float: right;
}

#voice .impression .text dl {
    margin-bottom: 30px;
}

#voice .impression .data, #voice .comfort .data {
    color: #999;
    margin-bottom: 30px;
    padding: 15px;
    border: 1px solid #efefef;
}

#voice .impression .text dt {
    color: #1dbee5;
    padding-bottom: 10px;
}

#voice .impression .text dd {
    padding-bottom: 10px;
}

#voice .impression .text dd .name {
    color: #666;
    text-align: right;
}

#voice .impression .btn_more {
    margin-top: 30px;
}

#voice .sample_data {
    overflow: hidden;
}

#voice .sample_data .list {
    float: left;
}

#voice .percent {
    text-align: center;
    float: right;
}

#voice .sample_data .percent dt {
    font-size: 18px;
    font-weight: bold;
    color: #666;
    padding: 50px 0 10px;
}

#voice .sample_data .point {
    font-family: "qMmΎ© ProN W3", "HiraMinProN-W3", "HGΎ©E", "lr oΎ©", "MS PMincho", "MS Ύ©", serif;
    font-size: 86px;
    color: #1dbee5;
    line-height: 80px;
}

#voice .sample_data .point span {
    font-size: 48px;
}

#voice .sample_data .point .total {
    font-size: 18px;
}

#voice .comfort .btn_more {
    margin-top: 100px;
}

#voice .inside h3 {
    font-family: "qMmΎ© ProN W3", "HiraMinProN-W3", "HGΎ©E", "lr oΎ©", "MS PMincho", "MS Ύ©", serif;
    font-size: 28px;
    font-weight: normal;
    text-align: center;
    margin-bottom: 60px;
}

#voice .inside h3 .sp {
    display: none;
}

#voice .article {
    padding-bottom: 100px;
    overflow: hidden;
}

#voice .article ul {
    margin-left: -35px;
}

#voice .article li {
    margin-left: 35px;
    float: left;
}

#voice .article li span {
    font-size: 12px;
}

#voice .article li img {
    width: 215px;
}

#voice .article li p {
    padding: 5px 0 30px;
}

#voice .voice_box {
    margin-bottom: 40px;
    overflow: hidden;
}

#voice .voice_box .btn_more {
    margin-bottom: 60px;
    background: #fff;
}

#voice .present {
    border-radius: 20px 20px 20px 20px;
    -moz-border-radius: 20px 20px 20px 20px;
    -webkit-radius: 20px 20px 20px 20px;
    text-align: center;
    margin-bottom: 60px;
    padding: 50px 30px 40px;
    background: #efefef;
    overflow: hidden;
}

#voice .present dt {
    font-family: "qMmΎ© ProN W3", "HiraMinProN-W3", "HGΎ©E", "lr oΎ©", "MS PMincho", "MS Ύ©", serif;
    font-size: 26px;
    line-height: 30px;
    padding-bottom: 30px;
}

#voice .present dt br {
    display: none;
}

#voice .present dd p {
    font-size: 16px;
    line-height: 26px;
    text-align: left;
    margin: 0 auto 10px;
    width: 720px;
}

#voice .present dd p span {
    font-size: 14px;
    text-align: center;
    padding-top: 30px;
    display: block;
}

#voice .present dd ul {
    margin-left: -5px;
    padding-bottom: 15px;
    overflow: hidden;
}

#voice .present dd li {
    margin-left: 5px;
    float: left;
}

#voice .present .btn_more a {
    font-size: 18px;
}

#voice .relation {
    margin-bottom: 50px;
    overflow: hidden;
}

#voice .relation .sp {
    display: none;
}

#voice .relation dt {
    font-size: 28px;
    line-height: 30px;
    text-align: center;
    margin-bottom: 30px;
    padding-bottom: 15px;
    border-bottom: 1px solid #cccccc;
}

#voice .relation dd li p {
    font-size: 16px;
    line-height: 26px;
    text-align: left;
    padding-top: 15px;
}

#voice .relation dd {
    text-align: center;
}

#voice .relation dd li span {
    display: none;
}

#voice .relation dd li {
    margin-left: 20px;
    width: 292px;
    display: inline-block;
}

/*  signup
-----------------------------------------------------------------------------*/
.signup_box {
    margin: 0 35px;
}

.process {
    text-align: center;
    height: 46px;
}

/* index */
#signup {
    padding: 0 0 40px;
}

#signup #intro {
    margin: 15px 35px 0;
    background: url(../../images/signup_bg.jpg) no-repeat right top;
}

#signup #intro h3 {
    font-size: 18px;
    color: #1dbee5;
    padding: 20px 0 0;
}

#signup #intro ul {
    padding: 35px 0 0;
    width: 600px;
}

#signup #intro ul:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#signup #intro li {
    -webkit-border-radius: 200px;
    -moz-border-radius: 200px;
    border-radius: 200px;
    box-sizing: border-box;
    margin: 0 14px 0 0;
    border: solid 2px #1dbee5;
    width: 175px;
    height: 175px;
    float: left;
}

#signup #intro li img {
    width: 54px;
    margin: 20px auto 15px;
    display: block;
}

#signup #intro li:nth-of-type(1) img {
    width: 94px;
    margin-top: 34px;
}

#signup #intro li:nth-of-type(3) img {
    width: 56px;
    margin-top: 30px;
}

#signup #intro li p {
    font-size: 18px;
    font-weight: bold;
    color: #1dbee5;
    line-height: 24px;
    text-align: center;
}

#signup #intro > p {
    font-size: 16px;
    line-height: 24px;
    padding: 30px 0 60px;
}

#signup #mailentry {
    margin-top: 15px;
    padding: 60px 55px 40px;
    border: solid 1px #dbdbdb;
}

#signup #mailentry h3,
#signup .next_flow h3,
#signup_step02 #detail h3 {
    font-size: 20px;
    text-align: center;
}

#signup #mailentry h3 span,
#signup .next_flow h3 span,
#signup_step02 #detail h3 span {
    border-left: 8px solid #1dbee5;
    padding-left: 12px;
    display: inline-block;
    line-height: 28px;
}

#signup #mailentry dl {
    margin: 40px 0 10px;
    position: relative;
}

#signup #mailentry dt {
    font-weight: bold;
    text-align: right;
    width: 290px;
    position: absolute;
    top: 7px;
    line-height: 28px;
}

#signup #mailentry dd {
    padding-left: 305px;
}

#signup #mailentry dd input {
    width: 280px;
    border: 1px solid #d1d1d1;
    border-radius: 8px;
    padding: 12px;
}

#signup #mailentry .note {
    text-align: center;
    font-size: 12px;
    color: #666;
    margin-bottom: 40px;
}

#signup .next_flow h3 {
    margin-top: 60px;
}

#signup .next_flow ol {
    width: 600px;
    margin: 20px auto 0;
    line-height: 1.8;
}

#signup .next_flow .faq_box {
    margin: 20px 0 60px;
    padding-bottom: 0;
}

#signup .next_flow .faq_box dt {
    font-family: ' CI', Meiryo, " qMmpSPro W3", "Hiragino Kaku Gothic Pro", Osaka, "MS PSVbN", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
    font-size: 16px;
    color: #666;
    padding-left: 0;
    background: none;
    text-align: center;
}

#signup .next_flow .faq_box dt:before {
    content: "Q.";
    margin-right: 6px;
}

#signup .next_flow .faq_box dd {
    line-height: normal;
    padding: 30px;
}

#signup .next_flow .faq_box dd .ans {
    font-family: ' CI', Meiryo, " qMmpSPro W3", "Hiragino Kaku Gothic Pro", Osaka, "MS PSVbN", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
    color: #1dbee5;
    font-weight: bold;
    padding: 0;
}

#signup .next_flow .faq_box dd .ans:before {
    display: none;
}

#signup .next_flow .faq_box dd p {
    padding-top: 10px;
}

#signup .next_flow .link_nav {
    display: flex;
    justify-content: center;
}

#signup .next_flow .link_nav li:first-child {
    margin-right: 20px;
}

#signup .terms_area {
    border: solid 1px #ccc;
    height: 290px;
    overflow: auto;
}

#signup .terms_area .privacy {
    padding: 0 10px 0;
}

#signup .terms_area .privacy h4:first-child {
    padding: 0;
}

#signup .terms_area .privacy .sub01 {
    padding: 20px 0 0 440px;
}

#signup .terms_area .privacy ul {
    padding-left: 5px;
}

#signup .terms_area .privacy ul li p {
    text-indent: 0;
    padding: 10px 0 0 0;
}

#signup .terms_area .privacy p {
    padding: 10px 0 0 5px;
}

#signup .terms_area div {
    font-size: 12px;
    line-height: 18px;
    padding: 20px;
}

#signup .terms_area > p {
    text-align: center;
}

#signup .terms_area ul {
    padding: 10px 15px 0;
}

#signup .terms_area ul ul {
    padding-top: 10px;
}

#signup .terms_area ul ul li {
    padding: 0 0 10px 0;
}

#signup .terms_area ul li {
    text-indent: -14px;
    padding: 0 0 10px 14px;
}

#signup .terms_area ul .noindent {
    text-indent: 0;
}

#signup .terms_area .sstitle {
    margin: 0px 0 20px;
}

#signup .terms_area h4 {
    font-size: 14px;
    padding: 20px 0 0 0;
}

#signup .terms_area h5 {
    font-size: 14px;
    padding: 10px 0 0 10px;
}

#signup .terms_area .align_r {
    padding: 20px 0 60px;
}

#signup .align_c {
    padding: 40px 0;
}

#signup .align_c p {
    padding: 25px 0 10px;
}

#signup .align_c p:last-child {
    font-size: 12px;
    padding: 0;
}

#signup .align_c a {
    color: #1dbee5;
}

/* step01 --------------------------------*/
#signup_step01 {
    padding: 0 0 40px;
}

#signup_step01 .signup_box {
    margin-top: 15px;
    padding: 40px 50px;
    border: solid 1px #dbdbdb;
}

#signup_step01 h3 {
    font-size: 18px;
    color: #1dbee5;
    text-align: center;
}

#signup_step01 .signup_box p {
    text-align: center;
    padding: 10px 0 0;
}

#signup_step01 dl {
    margin: 40px 0;
    border-top: solid 1px #dbdbdb;
}

#signup_step01 dt {
    font-weight: bold;
    padding: 40px 0 10px;
}

#signup_step01 li {
    font-size: 12px;
}

#signup_step01 li span {
    color: #226cc7;
}

#signup_step01 .btn_area {
    padding: 40px 0 0;
}

#signup_step01 .btn_area .btn {
    padding: 8px 40px;
    display: inline-block;
}

/* step02 --------------------------------*/
#signup_step02 {
    padding: 0 0 40px;
}

#signup_step02 #detail {
    margin-top: 15px;
    padding: 40px 50px;
    border: solid 1px #dbdbdb;
    border-bottom: none;
}

#signup_step02 #detail p {
    text-align: center;
    margin-top: 20px;
}

#signup_step02 #form_entry {
    padding: 30px 30px 0 30px;
    border: solid 1px #dbdbdb;
    border-bottom: none;
}

#signup_step02 #form_entry h4 {
    font-size: 18px;
    padding: 8px 20px;
    background: #f6f6f6;
}

#signup_step02 #form_entry h4 img {
    vertical-align: -3px;
}

#signup_step02 #form_entry dl {
    padding: 30px 0;
    position: relative;
}

#signup_step02 #form_entry dl .require {
    color: #1dbee5;
}

#signup_step02 #form_entry dt, #signup_step02 #form_invite_conf dt {
    font-weight: bold;
    letter-spacing: 0;
    text-align: right;
    padding: 12px 0;
    width: 290px;
    position: absolute;
    line-height: 3;
}

#signup_step02 #form_entry .conf_list dt,
#signup_step02 #form_entry .passwd_input dt {
    line-height: normal;
}

#signup_step02 #form_entry dd, #signup_step02 #form_invite_conf dd {
    padding: 12px 0 12px 330px;
}

#signup_step02 dd.line {
    margin: 0 0 15px;
    border-bottom: dotted 1px #dbdbdb;
}

#signup_step02 #form_entry dd span.note {
    font-size: 10px;
    display: block;
}

#signup_step02 #form_entry dd p.note02 {
    font-size: 12px;
    color: #777;
    line-height: 20px;
    margin-left: -150px;
    padding: 20px 0;
}

#signup_step02 #form_entry input,
#signup_step02 #form_entry select {
    border-radius: 8px;
    border: 1px solid #d1d1d1;
    padding: 12px;
}

#signup_step02 #form_entry input[type="text"] {
    width: 100px;
}

#signup_step02 #form_entry input[type="text"].w_s {
    width: 60px;
}

#signup_step02 #form_entry input[type="text"].w_l {
    width: 230px;
}

#signup_step02 #form_entry input[type="password"].w_l {
    width: 230px;
}

#signup_step02 #form_entry .password_input dd:nth-child(2) {
    color: #767676;
}

#signup_step02 #form_entry .password_input dt:nth-child(5) {
    padding-top: 2px;
}

#signup_step02 #form_entry .password_input dd:nth-child(6) {
    padding-top: 2px;
}

#signup_step02 #form_entry dl:first-of-type dt:nth-of-type(4),
#signup_step02 #form_entry dl:nth-of-type(2) dt:first-child {
    line-height: normal;
}

#signup_step02 #form_invite, #signup_step02 #form_invite_conf {
    padding: 0 30px 30px 30px;
    border-bottom: solid 1px #dbdbdb;
    border-left: solid 1px #dbdbdb;
    border-right: solid 1px #dbdbdb;
}

#signup_step02 #form_invite h3 {
    font-size: 18px;
    color: #1dbee5;
    text-align: center;
}

#signup_step02 #form_invite ul {
    margin: 0 auto;
    width: 570px;
}

#signup_step02 #form_invite li {
    padding: 5px 0;
}

#signup_step02 #form_invite input[type="text"] {
    width: 100px;
}

#signup_step02 #form_invite p {
    text-align: center;
    padding: 0 0 20px;
}

#signup_step02 #form_invite_conf p {
    text-align: center;
    padding: 0 0 20px;
}

#signup_step02 #form_invite p input, #signup_step02 #form_invite_conf p input {
    font-size: 14px;
}

#signup_step02 #form_invite_conf p input:nth-of-type(2) {
    margin-left: 10px;
}

#signup_step02 .tooltip01, #signup_step02 .tooltip02 {
    clear: both;
    position: relative;
}

#signup_step02 .tooltip01 div {
    font-size: 10px;
    line-height: 18px;
    padding: 5px 10px;
    border: 1px solid #000;
    width: 260px;
    top: 22px;
    left: 113px;
    display: none;
    background: #fff;
    position: absolute;
}

#signup_step02 .tooltip02 div {
    font-size: 10px;
    line-height: 18px;
    padding: 5px 10px;
    border: 1px solid #000;
    width: 260px;
    top: 22px;
    left: 168px;
    display: none;
    background: #fff;
    position: absolute;
}

/* step03 --------------------------------*/
#signup_step03 {
    padding-bottom: 40px;
}

#signup_step03 h3 {
    font-size: 18px;
    color: #1dbee5;
    text-align: center;
}

#signup_step03 .signup_box {
    margin-top: 15px;
    padding: 60px 0;
    border: solid 1px #dbdbdb;
}

#signup_step03 div p {
    text-align: center;
    padding-top: 20px;
}

#signup_step03 div p strong {
    margin: 10px 0 5px;
    display: block;
}

#signup_step03 .signup_box02 {
    margin-top: 15px;
    padding: 60px 0;
    border: solid 1px #dbdbdb;
}

#signup_step03 .signup_box02 div {
    padding: 10px 0 0 0;
}

/* signin --------------------------------*/
#signin {
    padding: 0 0 40px;
    width: 860px;
}

#signin:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#signin #signin_form {
    box-sizing: border-box;
    border: solid 1px #c2c2c2;
    width: 420px;
    height: 280px;
    float: left;
}

#signin #signin_form h2 {
    font-size: 18px;
    color: #1dbee5;
    line-height: 24px;
    padding: 15px 20px 10px;
    border-bottom: solid 1px #c2c2c2;
}

#signin #signin_form div {
    padding: 20px;
    position: relative;
}

#signin #signin_form dt {
    font-weight: bold;
}

#signin #signin_form dd {
    padding: 5px 0 20px;
}

#signin #signin_form dd input {
    width: 210px;
    border-radius: 8px;
    border: 1px solid #d1d1d1;
    vertical-align: middle;
    padding: 12px;
}

#signin #signin_form dd p input {
    margin-right: 8px;
}

#signin #signin_form p {
    font-size: 12px;
    padding: 10px 0 0;
}

#signin #signin_form p a {
    color: #0058a3;
}

#signin #signin_form p a img {
    vertical-align: middle;
    margin: 0 5px 0 0;
}

#signin #signin_form .icon_ng {
    text-align: center;
    padding: 5px;
    background: #FFE8E8;
}

#signin #signin_form div > input {
    font-size: 14px;
    width: 125px;
    height: 80px;
    top: 48px;
    right: 20px;
    position: absolute;
}

#signin #signin_form .tooltip01 {
    padding: 0;
    clear: both;
    position: relative;
}

#signin #signin_form .tooltip01 div {
    font-size: 10px;
    line-height: 18px;
    padding: 10px 15px;
    border: 1px solid #000;
    width: 280px;
    z-index: 1000;
    top: 34px;
    left: 184px;
    display: none;
    background: #fff;
    position: absolute;
}

#signin #signup_form {
    box-sizing: border-box;
    border: solid 1px #dbdbdb;
    width: 420px;
    height: 280px;
    float: right;
}

#signin #signup_form h2 {
    font-size: 16px;
    color: #624e56;
    text-align: center;
    padding: 20px 0;
}

#signin #signup_form ul {
    margin: 0 auto;
    width: 320px;
}

#signin #signup_form ul:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#signin #signup_form li {
    -webkit-border-radius: 200px;
    -moz-border-radius: 200px;
    border-radius: 200px;
    box-sizing: border-box;
    margin: 0 5px 0 0;
    border: solid 2px #d1d1d1;
    width: 100px;
    height: 100px;
    float: left;
    background: #fff;
}

#signin #signup_form li:first-of-type img {
    width: 60px;
    margin-top: 18px;
}

#signin #signup_form li:nth-of-type(3) img {
    margin: 14px auto 0;
}

#signin #signup_form li img {
    width: 36px;
    height: auto;
    margin: 9px auto 5px;
    display: block;
}

#signin #signup_form li p {
    font-size: 11px;
    font-weight: bold;
    color: #999;
    line-height: 14px;
    text-align: center;
    padding: 2px 0 0;
}

#signin #signup_form > p {
    font-size: 12px;
    color: #624e56;
    text-align: center;
    padding: 10px 0;
}

#signin #signup_form div {
    box-sizing: border-box;
    text-align: center;
    height: 74px;
    background: #f3f3f3;
}

#signin #amazon .difference h4 span {
    letter-spacing: normal;
}

/*  reminder
-----------------------------------------------------------------------------*/
.reminder_box {
    box-sizing: border-box;
    margin: 15px auto 40px;
    padding: 30px 50px;
    border: solid 1px #dbdbdb;
    width: 900px;
}

#reminder h2 {
    font-size: 20px;
    color: #1dbee5;
}

#reminder p {
    padding: 30px 75px;
}

#reminder dl {
    position: relative;
}

#reminder dt {
    font-weight: bold;
    text-align: right;
    width: 270px;
    position: absolute;
}

#reminder dd {
    padding: 0 0 15px 310px;
}

#reminder dd input {
    width: 230px;
}

#reminder dd .w_s {
    width: 100px;
}

#reminder .btn_area {
    text-align: center;
    padding: 20px 0 30px;
}

#reminder .btn_area .btn {
    font-size: 14px;
    padding: 10px;
    width: 160px;
    display: inline-block;
}

#reminder .align_c {
    padding-bottom: 60px;
}

#reminder dd span {
    font-size: 12px;
    padding: 0 10px;
}

#reminder .thanks_message {
    text-align: center;
    padding: 30px 0 80px;
}

#reminder .thanks_message strong {
    font-size: 18px;
    font-weight: normal;
    text-align: center;
    padding: 0 0 10px;
    display: block;
}

#reminder .thanks_message .btn {
    width: 200px;
}

#reminder p.icon_ng {
    text-align: center;
    margin: 0 auto;
    padding: 5px 0;
    width: 490px;
    background: #FFE8E8;
}

/*  mypage
-----------------------------------------------------------------------------*/
.contents_mypage {
    width: 720px;
    float: right;
}

#side_mypage {
    width: 220px;
    float: left;
}

/* side */
#side_mypage .menu_box {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    margin: 0 0 15px;
    border: solid 1px #ccc;
}

#side_mypage #summary {
    padding: 20px;
}

#side_mypage #summary dt {
    padding: 0 0 10px;
}

#side_mypage #summary dt strong {
    color: #1dbee5;
}

#side_mypage #summary li span {
    font-weight: bold;
    color: #dd910b;
}

#side_mypage #menu dt {
    font-size: 12px;
    color: #9f9e9e;
    padding: 10px 15px;
}

#side_mypage #menu dd {
    padding: 10px 20px 20px;
    border-top: solid 1px #ccc;
}

#side_mypage #menu li {
    padding: 5px 0;
}

#side_mypage #menu li a {
    font-size: 14px;
    text-decoration: none;
    padding: 0 0 0 13px;
    display: block;
    position: relative;
}

#side_mypage #menu li.current a {
    font-weight: bold;
}

#side_mypage #menu li a:hover:before, #side_mypage #menu li.current a:before {
    font: normal normal normal 14px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    font-size: 10px;
    color: #1dbee5;
    top: 5px;
    left: 0;
    display: block;
    content: "\f04b";
    position: absolute;
}

#side_mypage #menu li span {
    font-weight: normal;
    color: #1dbee5;
    margin: 0 0 0 10px;
}

#side_mypage .banner li {
    padding: 5px 0;
}

#side_mypage .help {
    padding: 10px 0 0;
}

#side_mypage .help li {
    padding: 2px 0;
}

#side_mypage .help li a {
    font-size: 12px;
    text-decoration: none;
}

#side_mypage .help li a:before {
    font: normal normal normal 14px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    color: #c7c7c7;
    padding: 0 5px 0 0;
    content: "\f0da";
}

/* mypage_table */
.mypage_table {
    box-sizing: border-box;
    border: solid 1px #dbdbd9;
    border-collapse: collapse;
    width: 100%;
}

.mypage_table th, .mypage_table tbody td {
    padding: 10px 15px;
    border: solid 1px #dbdbd9;
}

.mypage_table thead th {
    font-size: 12px;
    font-weight: normal;
    padding: 7px 15px;
    border-bottom: solid 2px #1dbee5;
    background: #f9f9f7;
}

.mypage_table tbody th {
    font-size: 14px;
    font-weight: bold;
    border-right: solid 2px #1dbee5;
    background: #f9f9f7;
}

/* point_box */
.point_box {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    margin: 0 35px 0 0;
    width: 260px;
    min-height: 115px;
    background: url(../../images/point_bg.png) no-repeat 22px 28px #f6f6f6;
    float: left;
}

.point_box dt {
    font-weight: bold;
    padding: 30px 0 0 90px;
}

.point_box dd {
    word-break: break-all;
    font-size: 12px;
    padding: 10px 0 0 90px;
}

.point_box dd strong {
    font-size: 26px;
    color: #dd910b;
    padding: 0 2px 0 0;
}

/* mypage --------------------------------*/
#mypage .box {
    padding: 10px 0 25px;
    border-top: solid 1px #cecece;
    width: 350px;
}

#mypage .box h3 {
    font-size: 16px;
    font-weight: bold;
    color: #333;
    line-height: normal;
    padding: 8px 15px;
    border-bottom: none;
    background: #f6f6f6;
}

#mypage .box h3 img {
    vertical-align: -3px;
}

#mypage .box ul {
    font-size: 12px;
    padding: 20px 0 20px 115px;
    min-height: 65px;
}

#mypage #info .noinfo {
    font-size: 12px;
    padding: 20px 0 20px 115px;
}

#mypage .box > p {
    text-align: right;
    margin: 10px 0 20px;
}

#mypage .box > p a {
    padding: 12px 0;
    width: 230px;
}

#mypage #info {
    width: 720px;
    background: url(../../images/mypage_icon01.gif) no-repeat 10px 60px;
}

#mypage #info h3 {
    background: #d3f3f8;
}

#mypage #info dl {
    font-size: 12px;
    padding: 20px 0 20px 135px;
    position: relative;
}

#mypage #info dt {
    padding: 4px 0 4px;
    position: absolute;
}

#mypage #info dd {
    padding: 4px 0 4px 150px;
}

#mypage #info dd a {
    text-decoration: none;
}

#mypage #info dd a.new {
    font-weight: bold;
}

#mypage #uses {
    background: url(../../images/mypage_icon02.gif) no-repeat 10px 60px;
}

#mypage #setting {
    background: url(../../images/mypage_icon03.gif) no-repeat 10px 60px;
}

#mypage #card {
    background: url(../../images/mypage_icon04.gif) no-repeat 10px 60px;
}

#mypage #point {
    background: url(../../images/mypage_icon05.gif) no-repeat 10px 60px;
}

#mypage #document {
    background: url(../../images/mypage_icon06.gif) no-repeat 10px 60px;
}

#mypage #signup {
    background: url(../../images/mypage_icon09.png) no-repeat 10px 60px;
}

#mypage .tooltip01, #mypage .tooltip02, #mypage .tooltip03, #mypage .tooltip04, #mypage .tooltip05, #mypage .tooltip06 {
    clear: both;
    position: relative;
}

#mypage .tooltip01 div {
    font-size: 10px;
    line-height: 18px;
    padding: 5px 10px;
    border: 1px solid #000;
    width: 260px;
    z-index: 1000;
    top: 22px;
    left: 98px;
    display: none;
    background: #fff;
    position: absolute;
}

#mypage .tooltip02 div {
    font-size: 10px;
    line-height: 18px;
    padding: 5px 10px;
    border: 1px solid #000;
    width: 260px;
    z-index: 1000;
    top: 22px;
    left: 98px;
    display: none;
    background: #fff;
    position: absolute;
}

#mypage .tooltip03 div {
    font-size: 10px;
    line-height: 18px;
    padding: 5px 10px;
    border: 1px solid #000;
    width: 260px;
    z-index: 1000;
    top: 22px;
    left: 132px;
    display: none;
    background: #fff;
    position: absolute;
}

#mypage .tooltip04 div {
    font-size: 10px;
    line-height: 18px;
    padding: 5px 10px;
    border: 1px solid #000;
    width: 260px;
    z-index: 1000;
    top: 22px;
    left: 196px;
    display: none;
    background: #fff;
    position: absolute;
}

#mypage .tooltip05 div {
    font-size: 10px;
    line-height: 18px;
    padding: 5px 10px;
    border: 1px solid #000;
    width: 260px;
    z-index: 1000;
    top: 22px;
    left: 130px;
    display: none;
    background: #fff;
    position: absolute;
}

#mypage .tooltip06 div {
    font-size: 10px;
    line-height: 18px;
    padding: 5px 10px;
    border: 1px solid #000;
    width: 260px;
    z-index: 1000;
    top: 22px;
    left: 132px;
    display: none;
    background: #fff;
    position: absolute;
}

/* otherpage common --------------------------------*/
#mypage_card .c_wrapper,
#document_form .c_wrapper,
#mypage_thanks .c_wrapper,
#mypage_info .c_wrapper,
#mypage_point_cart .c_wrapper,
#mypage_uses .c_wrapper,
#mypage_point .c_wrapper,
#mypage_review .c_wrapper,
#mypage_setting .c_wrapper,
#mypage .c_wrapper,
#mypage_unregist .c_wrapper,
#mypage_unregist_form .c_wrapper,
#unregist_thanks .c_wrapper,
#mypage_uses_zoom .c_wrapper {
    padding-bottom: 40px;
}

.contents_mypage h3 {
    font-size: 26px;
    font-weight: normal;
    color: #1dbee5;
    line-height: 30px;
    padding-bottom: 10px;
    border-bottom: solid 1px #e4e4e4;
}

.contents_mypage h4 {
    font-size: 16px;
    padding: 10px 15px;
    background: #f6f6f6;
}

.contents_mypage h4 img {
    vertical-align: -3px;
}

.contents_mypage h4.pick {
    background: #d3f3f8;
}

.contents_mypage .borderno {
    border: none;
}

/* info --------------------------------*/
#mypage_info .noinfo {
    font-size: 12px;
    padding: 20px 10px;
}

#mypage_info .box {
    font-size: 12px;
    padding: 20px 10px;
    border-bottom: solid 1px #e4e4e4;
}

#mypage_info .box > span {
    color: #666;
    display: block;
}

#mypage_info .box h3 {
    font-size: 14px;
    font-weight: normal;
    padding: 0 0 10px;
}

#mypage_info .box .new {
    font-weight: bold;
}

#mypage_info .box h3 span {
    color: #fa0000;
}

/* uses --------------------------------*/
#mypage_uses .contents_mypage > p {
    padding: 10px 0 20px;
}

#mypage_uses .note {
    font-size: 12px;
    color: #999;
}

#mypage_uses .contents_mypage > div {
    width: 100%;
    position: relative;
}

#mypage_uses .contents_mypage > div img {
    top: -50px;
    right: 0;
    position: absolute;
}

#mypage_uses .mypage_table tr td:nth-child(1) {
    font-size: 12px;
    text-align: center;
}

#mypage_uses .mypage_table tr td:nth-child(2) a {
    text-decoration: none;
}

#mypage_uses .mypage_table tr td:nth-child(3) {
    font-size: 12px;
    text-align: center;
}

#mypage_uses .mypage_table tr td:nth-child(3) strong {
    color: #1dbee5;
}

#mypage_uses .mypage_table tr td:nth-child(4) {
    white-spacing: nowrap;
    font-size: 12px;
    text-align: center;
    padding-left: 5px;
    padding-right: 5px;
}

#mypage_uses .mypage_table tr td:nth-child(4) a, #mypage_uses .mypage_table tr td:nth-child(4) span {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    letter-spacing: 0;
    margin: 2px 0;
    padding: 1px;
    width: 125px;
    display: inline-block;
}

#mypage_uses .mypage_table tr td:nth-child(5) {
    text-align: center;
}

#mypage_uses .mypage_table tr td:nth-child(5) a {
    color: #1183cb;
}

#mypage_uses .mypage_table td .reviewed {
    color: #8a8a8a;
    background: #e6e6e6;
}

#mypage_uses .att {
    color: #ff0000;
}

/* uses_zoom --------------------------------*/
#mypage_uses_zoom h3 {
    border-bottom: none;
}

#mypage_uses_zoom th {
    width: 120px;
}

#mypage_uses_zoom .time {
    text-align: center;
    width: 70px;
    background: #f9f9f7;
}

#mypage_uses_zoom table a {
    text-decoration: none;
}

#mypage_uses_zoom .c_wrapper p {
    text-align: right;
    padding: 10px 0 0;
}

#mypage_uses_zoom .c_wrapper p a {
    text-decoration: none;
}

/* document_form --------------------------------*/
#document_form h3 {
    border-bottom: none;
}

#document_form .contents_mypage .box .in_box {
    margin: 0 0 40px;
    padding: 0 0 40px;
    border: solid 1px #dbdbdb;
}

#document_form .tooltip01 {
    clear: both;
    position: relative;
}

#document_form .tooltip01 div {
    font-size: 10px;
    line-height: 18px;
    padding: 5px 10px;
    border: 1px solid #000;
    width: 280px;
    z-index: 1000;
    top: 22px;
    left: 148px;
    display: none;
    background: #fff;
    position: absolute;
}

#document_form .document_area {
    letter-spacing: -0.4em;
    text-align: center;
}

#document_form .document_area .hand {
    box-sizing: border-box;
    letter-spacing: 0;
    text-align: left;
    padding: 50px 45px 0;
    width: 50%;
    display: inline-block;
}

#document_form .document_area dl {
    position: relative;
}

#document_form .document_area dt {
    position: absolute;
}

#document_form .document_area dd {
    padding: 0 0 0 60px;
}

#document_form .document_area strong {
    font-size: 16px;
}

#document_form .document_area strong img {
    vertical-align: middle;
}

#document_form .document_area p {
    font-size: 12px;
    padding: 8px 0 0 32px;
}

#document_form .document_area .registered {
    font-weight: bold;
    color: #1dbee5;
}

#document_form .document_area .unregistered {
    color: #999;
}

#document_form .document_area ul {
    letter-spacing: -0.4em;
    padding: 20px 0 0;
}

#document_form .document_area li {
    letter-spacing: 0;
    padding: 0 3px 0 0;
    display: inline-block;
}

#document_form .document_area ul .btn {
    padding: 8px 15px;
    display: block;
}

#document_form .document_area ul span.btn {
    color: #ccc;
    border: 1px solid #ccc;
    background: #fbfaf9;
}

#document_form .document_area label {
    cursor: pointer;
}

#document_form .document_area label.btn {
    padding: 8px 30px;
}

#document_form .document_area label input {
    display: none;
}

#document_form .submit_area {
    text-align: center;
    padding: 55px 0 0;
}

#document_form .submit_area .btn {
    padding: 12px 80px;
    cursor: pointer;
}

#document_form .document_area .message {
    font-size: 14px;
    letter-spacing: 0;
    text-align: left;
    padding: 40px 45px 0;
}

/* review --------------------------------*/
#mypage_review h3 {
    margin-bottom: 10px;
}

#mypage_review h4 {
    background: #fff;
}

#mypage_review th {
    vertical-align: top;
    width: 120px;
}

#mypage_review th span {
    font-size: 12px;
    color: #989896;
}

#mypage_review .time {
    text-align: center;
    width: 70px;
    background: #f9f9f7;
}

#mypage_review table td > p {
    padding: 0 0 5px;
}

#mypage_review table td > a {
    text-decoration: none;
}

#mypage_review table textarea {
    resize: vertical;
    width: 98%;
    height: 215px;
}

#mypage_review table .notice {
    padding: 10px 0;
}

#mypage_review table .notice li {
    font-size: 12px;
    line-height: 18px;
    text-indent: -1em;
    padding: 0 0 0 1em;
}

#mypage_review table .notice li a {
    color: #2774dc;
}

#mypage_review .c_wrapper div > p {
    text-align: center;
    padding: 30px 0 0;
}

#mypage_review .c_wrapper div > p input {
    font-size: 14px;
    margin: 0 5px;
    padding: 10px 0;
    width: 170px;
    display: inline-block;
}

#mypage_review .impression p {
    padding: 0 0 10px;
}

#mypage_review .impression p span {
    font-size: 12px;
    color: #9f9f9f;
    line-height: 18px;
    display: block;
}

#mypage_review .impression div {
    box-sizing: border-box;
    width: 100%;
}

#mypage_review .impression dl {
    box-sizing: border-box;
    width: 50%;
    float: left;
}

#mypage_review .impression dt {
    font-weight: bold;
    padding: 10px 5px 0;
    border-top: solid 1px #d8d8d8;
}

#mypage_review .impression dt i {
    color: #1dbee5;
    padding: 0 5px 0 0;
}

#mypage_review .impression dd {
    padding: 5px 0 10px;
}

#mypage_review select {
    padding: 5px 0;
    width: 240px;
}

#mypage_review .impression li {
    padding: 2px 5px;
}

/* conf */
#mypage_review .impression_conf dl:nth-child(1) dt, #mypage_review .impression_conf dl:nth-child(2) dt {
    padding-top: 0;
    border: none;
}

/* thanks */
#mypage_review .review_thanks {
    font-size: 20px;
    color: #5c5c5c;
    line-height: 30px;
    padding: 90px 0 40px 235px;
    border-top: solid 1px #d8d8d8;
    background: url(../../images/review_thanks.png) no-repeat 45px 55px;
}

#mypage_review .contents_mypage .review_thanks h3 {
    font-size: 20px;
    font-weight: bold;
    color: #333;
    padding: 0;
    border: none;
}

#mypage_review .contents_mypage .review_thanks p {
    text-align: left;
    padding: 0;
}

#mypage_review .contents_mypage .review_thanks ul {
    padding: 35px 0 0;
}

#mypage_review .contents_mypage .review_thanks li {
    font-size: 12px;
    color: #333;
    line-height: 18px;
    text-indent: -1em;
    padding: 0 0 0 1em;
}

/* point --------------------------------*/
#mypage_point h3 {
    margin-bottom: 10px;
}

#mypage_point h4 {
    color: #1dbee5;
    background: #fff;
}

#mypage_point .contents_mypage > p {
    padding: 0 0 20px;
}

#mypage_point .point_area {
    width: 100%;
    margin-bottom: 30px;
}

#mypage_point .point_area:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#mypage_point .point_area div {
    box-sizing: border-box;
    padding: 0 0 0 30px;
    border-left: solid 1px #dbdbdb;
    width: 420px;
    min-height: 115px;
    float: left;
}

#mypage_point .point_guide {
    float: left;
}

#mypage_point .point_guide dt {
    font-weight: bold;
    color: #757c84;
}

#mypage_point .point_guide dd {
    font-size: 12px;
    padding: 5px 0 0;
}

#mypage_point .point_guide li {
    padding: 2px 0;
}

#mypage_point .point_guide li a {
    text-decoration: none;
}

#mypage_point .point_guide li a i {
    color: #999;
}

#mypage_point .point_charge {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    margin: 0 0 0 35px;
    padding: 35px 20px;
    background: #f6f6f6;
    float: left;
}

#mypage_point .point_charge .btn {
    text-align: center;
    padding: 10px 0;
    width: 170px;
    display: inline-block;
}

#mypage_point .point_change {
    padding: 0 0 0 45px;
    float: left;
}

#mypage_point .point_change dt {
    font-weight: bold;
    color: #1dbee5;
}

#mypage_point .point_change dd {
    padding: 10px 0 0;
}

#mypage_point .point_change .btn {
    text-align: center;
    padding: 10px 0;
    width: 200px;
    display: inline-block;
}

#mypage_point table td {
    box-sizing: border-box;
    font-size: 12px;
    text-align: center;
    padding: 8px 15px;
}

#mypage_point table td:nth-child(1) {
    width: 105px;
}

#mypage_point table td:nth-child(2) {
    text-align: left;
}

#mypage_point table td:nth-child(3) {
    width: 110px;
}

#mypage_point table td:nth-child(4) {
    width: 110px;
}

#mypage_point table td:nth-child(5) {
    width: 165px;
}

/* point_list --------------------------------*/
#mypage_point_list .c_wrapper {
    padding: 10px 0 40px;
}

#mypage_point_list h2 {
    font-size: 26px;
    font-weight: normal;
    color: #1dbee5;
    line-height: 30px;
    padding: 0 0 20px;
}

#mypage_point_list .point_area p {
    font-size: 12px;
    padding: 10px 0;
}

#mypage_point_list #list {
    width: 730px;
    overflow: hidden;
}

#mypage_point_list #list .read {
    font-size: 12px;
    color: #999;
    padding: 30px 0 0;
}

#mypage_point_list #list ul {
    width: 755px;
}

#mypage_point_list #list ul:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#mypage_point_list #list li {
    border-top: solid 40px #fff;
    border-right: solid 25px #fff;
    width: 220px;
    float: left;
}

#mypage_point_list #list dt {
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    font-size: 12px;
    color: #1dbee5;
    padding: 10px 20px;
    background: #fff0f6;
    position: relative;
}

#mypage_point_list #list dt span {
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    font-family: "qMmΎ© ProN W6", "HiraMinProN-W6", "HGΎ©E", "lr oΎ©", "MS PMincho", "MS Ύ©", serif;
    font-size: 20px;
    color: #fff;
    padding: 10px 15px;
    top: 0;
    right: 0;
    display: inline-block;
    background: #1dbee5;
    position: absolute;
}

#mypage_point_list #list dd {
    text-align: center;
    padding: 10px 0 0;
}

#mypage_point_list #list dd img {
    margin: 0 auto;
    width: 220px;
}

#mypage_point_list #list strong {
    text-align: left;
    padding: 10px;
    border-bottom: dotted 1px #ccc;
    display: block;
}

#mypage_point_list #list span {
    font-size: 12px;
    text-align: left;
    padding: 0 10px 20px;
    display: block;
}

#mypage_point_list #list p {
    text-align: left;
    padding: 10px;
}

#mypage_point_list #list li > a {
    text-align: center;
    margin: 0 auto 30px;
    padding: 8px 0;
    width: 90px;
    display: block;
}

/* point_form --------------------------------*/
#mypage_point_form .c_wrapper {
    padding: 10px 0 40px;
}

#mypage_point_form h2 {
    font-size: 26px;
    font-weight: normal;
    color: #1dbee5;
    line-height: 30px;
    padding: 0 0 30px;
}

#mypage_point_form .item_no {
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    font-size: 12px;
    color: #1dbee5;
    padding: 10px 20px;
    background: #fff0f6;
    position: relative;
}

#mypage_point_form .item_no strong {
    font-size: 14px;
    text-align: center;
    display: block;
}

#mypage_point_form #item_box {
    padding: 15px 0 0;
    width: 100%;
}

#mypage_point_form #item_box:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#mypage_point_form .fl {
    width: 220px;
}

#mypage_point_form .fl a img {
    width: 220px;
    height: auto;
}

#mypage_point_form .fr {
    width: 460px;
}

#mypage_point_form .fr h3 {
    padding: 20px 0 5px;
}

#mypage_point_form .fr > p {
    padding: 0 0 30px;
}

#mypage_point_form .fr > p span {
    padding: 10px 0 0;
    display: block;
}

#mypage_point_form .item_detail {
    padding: 30px 10px 0;
    border-top: solid 1px #d8d8d8;
}

#mypage_point_form .item_detail h4 {
    font-size: 16px;
    color: #1dbee5;
    padding: 0 0 20px;
}

#mypage_point_form .item_detail dl {
    position: relative;
}

#mypage_point_form .item_detail dt {
    padding: 0 0 0 20px;
    position: absolute;
}

#mypage_point_form .item_detail dd {
    padding: 0 0 15px 120px;
}

#mypage_point_form .item_detail dd:nth-child(4) {
    padding: 0 0 0 120px;
}

#mypage_point_form .item_detail select {
    width: 110px;
}

#mypage_point_form .item_shipping {
    padding: 0 30px 20px;
    border-bottom: solid 1px #d8d8d8;
}

#mypage_point_form .item_shipping h4 {
    font-size: 14px;
    color: #1dbee5;
    padding: 20px 0;
}

#mypage_point_form .item_shipping h4 a {
    font-weight: normal;
    color: #3184ca;
    margin: 0 0 0 15px;
}

#mypage_point_form .item_shipping dl {
    position: relative;
}

#mypage_point_form .item_shipping dt {
    text-align: right;
    width: 80px;
    position: absolute;
}

#mypage_point_form .item_shipping dd {
    padding: 0 0 10px 115px;
}

#mypage_point_form .fr p .btn {
    font-size: 14px;
    margin: 40px auto;
    padding: 12px 0;
    width: 170px;
    display: block;
}

#mypage_point_form .contents_mypage > p:last-child {
    text-align: right;
    padding: 15px 0 0;
    border-top: solid 1px #d8d8d8;
}

#mypage_point_form .contents_mypage > p:last-child a {
    text-decoration: none;
}

/* point_conf */
#mypage_point_form .point_conf {
    padding: 10px 0 0;
    position: relative;
}

#mypage_point_form .point_conf > dt {
    font-weight: bold;
    padding: 14px 10px 12px;
    position: absolute;
}

#mypage_point_form .point_conf > dd {
    padding: 14px 0 12px 145px;
    border-bottom: solid 1px #d8d8d8;
}

#mypage_point_form .point_conf > dd:nth-child(2) {
    font-size: 16px;
}

#mypage_point_form .point_conf > dd dl {
    position: relative;
}

#mypage_point_form .point_conf > dd dt {
    text-align: right;
    width: 60px;
    position: absolute;
}

#mypage_point_form .point_conf > dd dd {
    font-size: 12px;
    padding: 0 0 10px 100px;
}

#mypage_point_form .point_thanks {
    font-size: 20px;
    color: #5c5c5c;
    line-height: 30px;
    padding: 105px 0 40px 235px;
    border-top: solid 1px #d8d8d8;
    background: url(../../images/point_thanks.png) no-repeat 45px 55px;
}

#mypage_point_form .point_thanks h3 {
    font-size: 20px;
    font-weight: bold;
}

/* mypage_point_cart --------------------------------*/
#mypage_point_cart h3 {
    margin-bottom: 10px;
}

#mypage_point_cart .box01 {
    margin: 20px 0 0;
    padding: 25px 30px;
    border: solid 1px #dbdbdb;
}

#mypage_point_cart .box01 .amount {
    font-size: 16px;
    padding: 0 0 20px;
}

#mypage_point_cart .box01 .amount strong {
    font-weight: bold;
    color: #dd910b;
}

#mypage_point_cart .box01 dl {
    margin: 0 auto;
    padding: 30px 0 0;
    border-top: solid 1px #dbdbdb;
    width: 640px;
}

#mypage_point_cart .box01 dt {
    font-size: 18px;
    font-weight: bold;
    padding: 0 10px;
    position: relative;
}

#mypage_point_cart .box01 dt span {
    font-size: 14px;
    font-weight: normal;
    color: #ccc;
    right: 10px;
    position: absolute;
}

#mypage_point_cart .box01 dt span a {
    font-weight: bold;
    color: #000;
}

#mypage_point_cart .box01 .point_select ul {
    padding: 5px 0 0;
    width: 100%;
}

#mypage_point_cart .box01 .point_select ul:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#mypage_point_cart .box01 .point_select li {
    padding: 10px 0 0 20px;
    width: 190px;
    float: left;
    height: 101px;
}

#mypage_point_cart .box01 .point_select label {
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    box-sizing: border-box;
    border-radius: 10px;
    font-size: 12px;
    text-align: center;
    padding: 15px 0 10px;
    display: block;
    cursor: pointer;
}

#mypage_point_cart .box01 .point_select label.active {
    border: solid 1px #42CBFF;
    background: #E6F9FF;
}

#mypage_point_cart .box01 .point_select input {
    display: none;
}

#mypage_point_cart .box01 .point_select strong {
    font-size: 14px;
    display: block;
}

#mypage_point_cart .box01 .point_select b {
    font-size: 20px;
    line-height: 24px;
}

#mypage_point_cart .box01 .point_select i {
    font-size: 10px;
}

#mypage_point_cart .box01 .point_select span {
    font-size: 10px;
    font-weight: normal;
    color: #aaa;
    line-height: 14px;
    display: block;
}

#mypage_point_cart .box01 .simulation {
    color: #ccc;
    padding: 30px 20px;
}

#mypage_point_cart .box01 .simulation span {
    font-size: 14px;
    font-weight: bold;
    color: #1dbee5;
    display: inline;
}

#mypage_point_cart .box01 .point_payment {
    padding: 20px 5px 30px;
}

#mypage_point_cart .box01 .point_payment li {
    font-size: 16px;
    font-weight: bold;
    padding: 0 50px 0 0;
    display: inline;
}

#mypage_point_cart .btn_area {
    text-align: center;
    padding: 50px 0;
    border-top: solid 1px #dbdbdb;
}

#mypage_point_cart .btn_area .btn {
    font-size: 16px;
    padding: 10px 0;
    width: 200px;
}

/* mypage_point_cart */
#mypage_point_cart .box02 {
    padding: 20px 0;
}

#mypage_point_cart .box02 table {
    box-sizing: border-box;
    border: solid 1px #dbdbdb;
    border-bottom: none;
    width: 100%;
}

#mypage_point_cart .box02 table th, #mypage_point_cart .box02 table td {
    text-align: left;
    border-bottom: solid 1px #dbdbdb;
}

#mypage_point_cart .box02 table th {
    font-size: 16px;
    font-weight: bold;
    color: #5f5f5f;
    padding: 20px;
    width: 160px;
    background: #f7f7f7;
}

#mypage_point_cart .box02 table td {
    padding: 0 20px;
}

#mypage_point_cart .box02 table td p {
    font-size: 12px;
    vertical-align: 5px;
    padding: 0 5px 0 0;
    display: inline-block;
}

#mypage_point_cart .box02 table td p strong {
    font-size: 20px;
}

#mypage_point_cart .box02 table td .point_bonus {
    font-size: 10px;
    color: #1dbee5;
    line-height: 18px;
    vertical-align: 0;
    padding: 0 0 0 35px;
    position: relative;
}

#mypage_point_cart .box02 table td .point_bonus:before {
    font: normal normal normal 14px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    box-sizing: border-box;
    font-size: 10px;
    color: #1dbee5;
    text-align: center;
    padding: 6px 6px 0;
    width: 20px;
    height: 20px;
    top: 10px;
    left: 0;
    display: block;
    background: #d3f3f8;
    content: "\f067";
    position: absolute;
}

#mypage_point_cart .box02 table td .point_bonus span {
    font-size: 12px;
    display: block;
}

#mypage_point_cart .box02 table td .point_bonus span strong {
    font-size: 16px;
}

#mypage_point_cart .box03 {
    padding: 30px 40px;
    border: solid 1px #dbdbdb;
}

#mypage_point_cart #payment_conv dl {
    padding: 20px 0 0;
    position: relative;
}

#mypage_point_cart #payment_conv dt {
    font-size: 16px;
    position: absolute;
}

#mypage_point_cart #payment_conv dd {
    padding: 0 0 0 140px;
}

#mypage_point_cart #payment_conv dd span {
    padding: 5px 0 0;
    display: block;
}

#mypage_point_cart #payment_conv dd p {
    font-size: 16px;
    padding: 0 0 10px;
}

#mypage_point_cart #payment_conv dd a {
    color: #008de7;
}

#mypage_point_cart #payment_conv dd a img {
    vertical-align: -2px;
    margin: 0 5px 0 0;
}

#mypage_point_cart #payment_credit .credit_select {
    box-sizing: border-box;
    padding: 20px;
    width: 100%;
}

#mypage_point_cart #payment_credit .credit_select:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#mypage_point_cart #payment_credit .st {
    zoom: 1;
    overflow: hidden;
}

#mypage_point_cart h5 {
    color: #1dbee5;
    font-size: 14px;
    border-bottom: 1px solid #e4e4e4;
    margin-bottom: 10px;
}

#mypage_point_cart #payment_credit .st span {
    font-size: 11px;
    color: #9d9d9d;
    line-height: 30px;
    padding: 5px 38px 0 0;
    float: right;
}

#mypage_point_cart #payment_credit #radio_select li {
    border-radius: 5px 5px 5px 5px;
    -moz-border-radius: 5px 5px 5px 5px;
    -webkit-radius: 5px 5px 5px 5px;
    font-size: 12px;
    line-height: 30px;
    margin-bottom: 5px;
    padding: 5px 0 5px 10px;
}

#mypage_point_cart #payment_credit #radio_select.conv li {
    width: 180px;
    float: left;
}

#mypage_point_cart #payment_credit #radio_select.conv li input {
    vertical-align: -2px;
}

#mypage_point_cart #payment_credit #radio_select li input {
    margin-right: 15px;
}

#mypage_point_cart #payment_credit #radio_select li p {
    padding-right: 25px;
    float: right;
}

#mypage_point_cart #payment_credit #radio_select li label, #mypage_point_cart #payment_credit #radio_select li input {
    cursor: pointer;
}

#mypage_point_cart #payment_credit #radio_select li label span {
    font-size: 14px;
}

#mypage_point_cart #payment_credit ul li .btn {
    font-size: 14px;
    margin-left: 20px;
    padding: 2px 10px;
}

#mypage_point_cart #payment_credit #radio_select li img {
    margin-right: 15px;
}

#mypage_point_cart #payment_credit #radio_select li.active {
    background: #f8f8f8;
}

#mypage_point_cart #payment_credit .box {
    padding: 25px 0 0;
}

#mypage_point_cart #payment_credit .box h4 {
    margin-bottom: 15px;
}

#mypage_point_cart #payment_credit .box .card_type {
    zoom: 1;
    margin-bottom: 20px;
    overflow: hidden;
}

#mypage_point_cart #payment_credit .box .card_type img {
    float: left;
}

#mypage_point_cart #payment_credit .box .card_type p {
    font-size: 12px;
    padding: 25px;
    float: left;
}

#mypage_point_cart #payment_credit .box dl {
    margin-bottom: 10px;
    float: left;
}

#mypage_point_cart #payment_credit .box dt {
    font-size: 11px;
    font-weight: bold;
    line-height: 12px;
}

#mypage_point_cart #payment_credit .box dd select {
    vertical-align: middle;
    border: solid 1px #ccc;
    height: 28px;
}

#mypage_point_cart #payment_credit .box .card_number {
    margin-right: 20px;
}

#mypage_point_cart #payment_credit .box dd {
    line-height: 4;
}

#mypage_point_cart #payment_credit .box .card_number input {
    border-radius: 8px;
    border: 1px solid #d1d1d1;
    padding: 12px;
    width: 160px;
}

#mypage_point_cart #payment_credit .box select {
    padding: 5px;
}

#mypage_point_cart #payment_credit .box .btn {
    line-height: 30px;
    margin-left: 15px;
    padding: 0 15px;
}

#mypage_point_cart #payment_credit .message_box {
    color: #519A14;
    text-align: center;
    margin: 15px 0;
    background: #E7FAD8;
}

#mypage_point_cart #payment_credit p.icon_ng {
    clear: both;
}

#mypage_point_cart .order_area {
    text-align: center;
    padding: 50px 0;
}

#mypage_point_cart .order {
    box-sizing: border-box;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    font-size: 16px;
    font-size: 16px;
    color: #000;
    text-align: center;
    text-decoration: none;
    margin: 0 0 15px;
    padding: 10px 30px;
    border: solid 1px #cd9a02;
    background: url(../../images/order_bg.gif) repeat-x left top #ffd62a;
    cursor: pointer;
}

#mypage_point_cart .order:hover {
    background: url(../../images/order_bg_over.gif) repeat-x left top #f9c700;
}

#mypage_point_cart .order_area .back {
    color: #008de7;
}

/* thanks */
#mypage_point_cart .point_cart_thanks {
    text-align: center;
    padding: 50px 100px;
    border: solid 1px #dbdbdb;
}

#mypage_point_cart .point_cart_thanks dt {
    font-size: 18px;
    font-weight: bold;
    color: #1dbee5;
}

#mypage_point_cart .point_cart_thanks dd {
    padding: 15px 0 0;
}

#mypage_point_cart .point_cart_thanks dd .storelink a {
    color: #008de7;
}

#mypage_point_cart .point_cart_thanks dd .storelink img {
    vertical-align: -2px;
    margin: 0 5px 0 0;
}

#mypage_point_cart .point_cart_thanks .note {
    font-size: 10px;
    color: #a9a9a9;
    line-height: 18px;
}

/* setting --------------------------------*/
#mypage_setting .contents_mypage .box .in_box {
    margin-bottom: 30px;
    border: solid 1px #dbdbdb;
}

#mypage_setting .contents_mypage dl {
    padding: 25px 0 15px;
    position: relative;
}

#mypage_setting .contents_mypage dt {
    font-weight: bold;
    text-align: right;
    width: 240px;
    position: absolute;
    line-height: 3;
}

#mypage_setting .contents_mypage dt span {
    color: #ff3a20;
}

#mypage_setting .contents_mypage dd {
    padding: 0 0 10px 270px;
    line-height: 3;
}

#mypage_setting .contents_mypage dd input,
#mypage_setting .contents_mypage dd select {
    border-radius: 8px;
    border: 1px solid #d1d1d1;
    padding: 12px;
}

#mypage_setting .contents_mypage dd p {
    padding: 5px 0 0;
}

#mypage_setting .contents_mypage .add_email {
    padding-bottom: 20px;
}

#mypage_setting .contents_mypage dd li {
    padding: 0 0 8px;
}

#mypage_setting .contents_mypage .box dd div {
    padding: 0 0 10px;
    border: none;
}

#mypage_setting .contents_mypage dd .btn {
    font-size: 12px;
    padding: 3px 15px 3px 10px;
    display: inline-block;
    margin-left: 12px;
}

#mypage_setting .contents_mypage dd span {
    font-size: 10px;
}

#mypage_setting .contents_mypage form > div > p:last-child {
    text-align: center;
    padding: 30px 0;
    border-top: solid 1px #dbdbdb;
}

#mypage_setting .contents_mypage form > div > p:last-child input {
    font-size: 14px;
    padding: 14px 0;
    width: 160px;
}

#mypage_setting .contents_mypage form input[type="text"] {
    width: 230px;
}

#mypage_setting .contents_mypage .add_tel input {
    font-size: 14px;
    padding: 5px;
}

#mypage_setting .contents_mypage .add_tel .btn {
    margin: 0 0 0 10px;
    padding: 6px 15px;
    display: inline-block;
}

#mypage_setting .contents_mypage form input.w_ss {
    width: 60px;
}

#mypage_setting .contents_mypage form input.w_s {
    width: 105px;
}

#mypage_setting .contents_mypage form input.w_l {
    width: 290px;
}

#mypage_setting .contents_mypage form .w_pref {
    width: 110px;
}

#mypage_setting .contents_mypage dd.line {
    margin: 0 0 25px;
    border-bottom: dotted 1px #dbdbdb;
}

#mypage_setting .contents_mypage dd p.note {
    font-size: 12px;
    color: #777;
    line-height: 20px;
    margin-left: -100px;
    padding: 10px 0;
}

#mypage_setting .tooltip01, #mypage_setting .tooltip02, #mypage_setting .tooltip03, #mypage_setting .tooltip04 {
    clear: both;
    position: relative;
}

#mypage_setting .tooltip01 div {
    font-size: 10px;
    line-height: 18px;
    padding: 5px 10px;
    border: 1px solid #000;
    width: 280px;
    z-index: 1000;
    top: 22px;
    left: 148px;
    display: none;
    background: #fff;
    position: absolute;
}

#mypage_setting .tooltip02 div {
    font-size: 10px;
    line-height: 18px;
    padding: 5px 10px;
    border: 1px solid #000;
    width: 280px;
    z-index: 1000;
    top: 22px;
    left: 97px;
    display: none;
    background: #fff;
    position: absolute;
}

#mypage_setting .tooltip03 div {
    font-size: 10px;
    line-height: 18px;
    padding: 5px 10px;
    border: 1px solid #000;
    width: 280px;
    z-index: 1000;
    top: 22px;
    left: 180px;
    display: none;
    background: #fff;
    position: absolute;
}

#mypage_setting .tooltip04 div {
    font-size: 10px;
    line-height: 18px;
    padding: 5px 10px;
    border: 1px solid #000;
    width: 280px;
    z-index: 1000;
    top: 22px;
    left: 97px;
    display: none;
    background: #fff;
    position: absolute;
}

/* unregist --------------------------------*/
#mypage_unregist .c_wrapper {
    padding-bottom: 40px;
}

#mypage_unregist h3 {
    margin-bottom: 10px;
}

#mypage_unregist .contents_mypage > p {
    font-weight: bold;
    padding: 0 0 20px;
}

#mypage_unregist .contents_mypage dl {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    padding: 40px 80px;
    background: url(../../images/unregist_caution.png) no-repeat 38px 38px #f6f6f6;
}

#mypage_unregist .contents_mypage dt {
    font-weight: bold;
    color: #1dbee5;
}

#mypage_unregist .contents_mypage ul {
    padding: 10px 0 0;
}

#mypage_unregist .contents_mypage li {
    font-size: 12px;
}

#mypage_unregist .contents_mypage li a {
    color: #0090c6;
}

#mypage_unregist .contents_mypage div {
    text-align: center;
    padding: 40px 0 0;
}

#mypage_unregist .contents_mypage div p {
    padding: 0 0 20px;
}

#mypage_unregist .contents_mypage div .btn {
    padding: 8px 30px;
    display: inline-block;
}

/* unregist_form --------------------------------*/
#mypage_unregist_form .c_wrapper {
    padding-bottom: 40px;
}

#mypage_unregist_form .borderno {
    border: none;
}

#mypage_unregist_form h5 {
    color: #1dbee5;
    font-size: 14px;
    border-bottom: 1px solid #e4e4e4;
    margin-bottom: 10px;
}

#mypage_unregist_form h5 span {
    display: block;
    color: #666;
    font-size: 12px;
    font-weight: normal;
}

#mypage_unregist_form .contents_mypage div {
    padding: 30px;
    border: solid 1px #cfcfcf;
}

#mypage_unregist_form .contents_mypage div p {
    text-align: left;
    padding: 10px 0 25px;
}

#mypage_unregist_form .contents_mypage ul {
    margin-bottom: 30px;
}

#mypage_unregist_form .contents_mypage li {
    font-size: 16px;
    padding: 10px 25px 0 0;
    display: inline-block;
    white-space: nowrap;
}

#mypage_unregist_form .contents_mypage li input {
    margin: 0 5px 0 0;
}

#mypage_unregist_form textarea {
    width: 560px;
    height: 95px;
    border-radius: 8px;
    border: 1px solid #d1d1d1;
    padding: 12px;
}

#mypage_unregist_form .contents_mypage p {
    text-align: center;
    padding: 40px 0 20px;
}

#mypage_unregist_form .contents_mypage .btn {
    font-size: 14px;
    margin: 0 auto;
    padding: 10px 0;
    width: 200px;
    display: block;
}

#mypage_unregist_form .contents_mypage a {
    color: #1183cb;
}

/* unregist_thanks --------------------------------*/
#unregist_thanks {
    text-align: center;
    margin: 0 auto;
    padding: 0 0 40px;
    width: 900px;
}

#unregist_thanks h2 {
    margin-top: 50px;
}

#unregist_thanks h3 {
    color: #1dbee5;
    margin-bottom: 10px;
}

#unregist_thanks .box {
    line-height: 30px;
    padding: 40px 0;
    border: solid 1px #dbdbdb;
    width: 720px;
    margin: 0 auto;
}

#unregist_thanks p {
    font-size: 16px;
    padding: 0 0 40px;
}


/* reserv
-----------------------------------------------------------------------------*/
/* header */
#reserv_header {
    border-top: solid 6px #1dbee5;
}

#reserv_header div {
    margin: 0 auto;
    width: 860px;
}

#reserv_header {
    width: 100%;
    height: 150px;
    background: url(../../images/title_bg.gif) no-repeat center bottom;
    background-size: 860px 18px;
}

#reserv_header:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#reserv_header h1 {
    float: left;
}

#reserv_header p {
    float: left;
}

#reserv_header span {
    font-size: 10px;
    padding: 40px 20px 0 0;
    display: block;
    float: right;
}

/* contents */
.reserv_wrapper {
    margin: 0 auto;
    padding: 30px 0 0;
    width: 840px;
}

.reserv_wrapper:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

.reserv_wrapper a {
    color: #30cbff;
}

.reserv_wrapper a.btn {
    color: #000;
}

.reserv_wrapper .main {
    width: 525px;
    float: left;
}

.reserv_wrapper .side {
    box-sizing: border-box;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    border: solid 1px #eee;
    width: 285px;
    float: right;
}

.reserv_wrapper .note {
    font-size: 10px;
    color: #a9a9a9;
    padding: 35px 0 0;
    clear: both;
}

.reserv_wrapper .note p {
    line-height: 18px;
    padding: 15px 0 0;
}

.reserv_wrapper .note a {
    color: #30cbff;
}

.reserv_wrapper .add_text {
    padding: 20px 0;
    clear: both;
}

.reserv_wrapper .add_text span {
    color: #fe3f75;
}

.reserv_wrapper h2 {
    font-size: 24px;
    font-weight: normal;
    text-align: center;
    padding: 0 0 20px;
}

.reserv_wrapper h3 {
    font-size: 16px;
    color: #333;
    margin: 20px 0;
    padding-left: 8px;
    border-left: 5px solid #1dbee5;
}

.reserv_wrapper .lead_text {
    color: #1dbee5;
    text-align: center;
    margin-bottom: 30px;
}

.reserv_wrapper .next_area {
    padding: 20px 30px 15px;
    background: #f8f8f8;
}

.reserv_wrapper .next_area .btn {
    box-sizing: border-box;
    font-size: 16px;
    text-align: center;
    margin: 0 0 5px;
    padding: 14px;
    width: 100%;
    display: block;
    position: relative;
}

.reserv_wrapper .next_area .btn:after {
    content: url(../../images/icon_arr_gray.png);
    position: absolute;
    top: 30%;
    right: 5%;
}

.reserv_wrapper .next_area p {
    text-align: center;
    padding: 5px 0 0;
}

.reserv_wrapper .login_status,
.reserv_contents .login_status {
    margin-bottom: 20px;
}

.reserv_wrapper .login_status p,
.reserv_contents .login_status p {
    background: #1dbee5;
    color: #fff;
    text-align: center;
    padding: 10px;
}

.reserv_contents .login_status img {
    width: 100%;
}

.reserv_wrapper input[type="text"],
.reserv_wrapper input[type="number"],
.reserv_wrapper select {
    border-radius: 8px;
    border: 1px solid #d1d1d1;
    padding: 12px;
}


/* footer */
#reserv_footer {
    margin: 30px auto 10px;
    border-top: solid 1px #eee;
    width: 850px;
}

#reserv_footer:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#reserv_footer div {
    float: left;
}

#reserv_footer p {
    font-size: 10px;
    color: #a9a9a9;
    padding: 40px 0 0 20px;
    float: left;
}

#reserv_footer p a {
    color: #30cbff;
}

#reserv_footer p span {
    padding: 0 0 0 20px;
}

#reserv_footer ul {
    width: 140px;
    float: right;
}

#reserv_footer li {
    padding: 15px 10px 0 0;
    float: left;
}

#reserv_footer li:first-child {
    width: 70px;
}

#reserv_footer li #ssl {
    font-size: 8px;
    line-height: 12px;
}

#reserv_footer li #ssl img {
    width: 50px !important;
    margin-bottom: 2px !important;
}

.reserv_contents {
    margin: 0 auto;
    padding: 30px 0 50px;
    width: 640px;
}

.reserv_contents .btn {
    font-size: 14px;
}

/* reserv_tel --------------------------------*/
#reserv_tel h2 {
    font-size: 16px;
    padding: 0 0 15px;
}

#reserv_tel > p {
    padding: 0 0 15px;
}

#reserv_tel .step_current {
    box-sizing: border-box;
    margin: 0 0 60px;
    border: solid 1px #dcdcdc;
    width: 100%;
    display: table;
    position: relative;
}

#reserv_tel .step_current > h3 {
    box-sizing: border-box;
    font-size: 16px;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    padding: 20px 20px;
    width: 150px;
    display: table-cell;
    background: #1dbee5;
}

#reserv_tel .step_current > h3 span {
    font-size: 14px;
    padding: 0 0 5px;
    display: block;
}

#reserv_tel .step_current > div {
    padding: 20px 30px;
    display: table-cell;
}

#reserv_tel .step_current > div span {
    font-size: 12px;
}

#reserv_tel .step_current:after {
    font: normal normal normal 14px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    font-size: 90px;
    color: #ccc;
    text-align: center;
    width: 100%;
    left: 0;
    bottom: -75px;
    display: block;
    content: "\f107";
    position: absolute;
}

#reserv_tel .step_done {
    font-size: 16px;
    font-weight: bold;
    color: #888;
    margin: 0 0 3px;
    padding: 5px 20px 5px;
    border: solid 1px #dcdcdc;
    background: url(../../images/reserv_check.gif) no-repeat left top #f3f3f3;
    position: relative;
}

#reserv_tel .step_done span {
    box-sizing: border-box;
    font-size: 14px;
    padding: 0 25px 0;
}

#reserv_tel .step_next {
    font-size: 16px;
    font-weight: bold;
    color: #888;
    margin: 0 0 40px;
    padding: 15px 20px 13px;
    border: solid 1px #dcdcdc;
    position: relative;
}

#reserv_tel .step_next:after {
    font: normal normal normal 14px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    font-size: 50px;
    color: #ccc;
    text-align: center;
    width: 100%;
    left: 0;
    bottom: -45px;
    display: block;
    content: "\f107";
    position: absolute;
}

#reserv_tel .step_next:last-child:after {
    display: none;
}

#reserv_tel .step_next span {
    box-sizing: border-box;
    font-size: 14px;
    padding: 0 30px 0 0;
}

/* step01 */
#reserv_tel #step01 div div {
    margin: 10px 0 15px;
    padding: 10px 20px;
    background: #f6f6f6;
}

#reserv_tel #step01 div div span {
    font-size: 14px;
    padding: 0 15px 0 0;
}

#reserv_tel #step01 div div strong {
    font-size: 16px;
    font-weight: bold;
    color: #1dbee5;
    line-height: 24px;
}

#reserv_tel #step01 div a {
    color: #008de7;
}

#reserv_tel #step01 .btn {
    color: #000;
    text-align: center;
    margin: 0 auto 10px;
    padding: 8px 0;
    width: 200px;
    display: block;
}

/* step02 */
#reserv_tel #step02 {
    margin-top: 20px;
}

#reserv_tel #step02 div p strong {
    font-weight: normal;
    color: #1dbee5;
}

#reserv_tel #step02 div div {
    text-align: center;
    margin: 10px 0 15px;
    padding: 15px 20px;
    background: #f6f6f6;
}

#reserv_tel #step02 div div .btn {
    margin: 10px auto 0;
    padding: 8px 0;
    width: 145px;
    display: block;
}

#reserv_tel #step02 div div span {
    font-size: 14px;
    padding: 0 15px 0 0;
}

#reserv_tel #step02 div div strong {
    font-size: 16px;
    font-weight: bold;
    color: #1dbee5;
    line-height: 24px;
}

/* step03 */
#reserv_tel #step03 {
    margin-top: 20px;
}

#reserv_tel #step03 div p strong {
    font-weight: normal;
    color: #1dbee5;
}

#reserv_tel #step03 div div {
    margin: 10px 0 0;
    padding: 15px 20px;
    background: #f6f6f6;
}

#reserv_tel #step03 div div input[type="text"] {
    width: 230px;
    border-radius: 8px;
    border: 1px solid #d1d1d1;
    padding: 12px;
    margin-top: 10px;
}

#reserv_tel #step03 div div .btn {
    margin: 0 0 0 8px;
    padding: 8px 20px;
}

/* tel_thanks */
#reserv_tel #tel_thanks {
    text-align: center;
    padding: 40px 0;
    border: solid 1px #dcdcdc;
}

#reserv_tel #tel_thanks h3 {
    font-size: 16px;
    color: #1dbee5;
}

#reserv_tel #tel_thanks p {
    padding: 10px 0 20px;
}

#reserv_tel #tel_thanks a {
    color: #007ae1;
}

/* reserv01_tel --------------------------------*/

#reserv01_tel .main > p {
    font-size: 10px;
    color: #a9a9a9;
    padding: 20px 0 30px;
}

#reserv01_tel #radio_select li {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    padding: 8px 10px;
    position: relative;
}

#reserv01_tel #radio_select label {
    cursor: pointer;
}

#reserv01_tel #radio_select input {
    margin: 0 15px 0 5px;
}

#reserv01_tel #radio_select a {
    padding: 4px 12px;
    top: 7px;
    right: 10px;
    display: inline-block;
    position: absolute;
}

#reserv01_tel #radio_select .active {
    background: #f8f8f8;
}

#reserv01_tel .add {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    padding: 15px 20px 30px;
    border: solid 1px #eee;
}

#reserv01_tel .add h4 {
    font-size: 14px;
}

#reserv01_tel .add dt {
    font-size: 10px;
    font-weight: bold;
    padding: 10px 0 0;
}

#reserv01_tel .add dd input {
    font-size: 14px;
}

#reserv01_tel .add dd .btn {
    margin: 0 0 0 10px;
    padding: 6px 15px;
    display: inline-block;
}

#reserv01_tel .add p {
    font-size: 10px;
    line-height: 18px;
    padding: 15px 0 0;
}

#reserv01_tel .main p.icon_ng {
    font-size: 12px;
    color: #ff3c3c;
    padding: 10px 0 0;
}

/* reserv_payment --------------------------------*/
#reserv_payment .main {
    border-top: solid 1px #eee;
}

#reserv_payment .main div {
    font-size: 16px;
    font-weight: bold;
    padding: 15px 0;
    border-bottom: solid 1px #eee;
    position: relative;
}

#reserv_payment .main label {
    cursor: pointer;
}

#reserv_payment .main input {
    margin: 0 15px 0 5px;
}

#reserv_payment .main div p {
    font-size: 12px;
    font-weight: normal;
    padding: 0 0 0 35px;
}

#reserv_payment .main div p span {
    color: #a9a9a9;
}

#reserv_payment .main .tooltip {
    font-weight: normal;
    top: 18px;
    left: 500px;
    position: absolute;
}

#reserv_payment .main dd {
    font-size: 10px;
    line-height: 16px;
    padding: 10px 15px;
    border: solid 1px #ccc;
    width: 250px;
    z-index: 2;
    top: 10px;
    left: 10px;
    display: none;
    background: #fff;
    position: absolute;
}

#reserv_payment .main > p {
    padding: 20px 0 0;
}

#reserv_payment .main > p span {
    color: #1dbee5;
}

/* reserv03_card --------------------------------*/

#reserv03_card .box {
    box-sizing: border-box;
    margin: 20px 0 0;
    width: 100%;
}

#reserv03_card .box:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#reserv03_card .st {
    zoom: 1;
    overflow: hidden;
}

#reserv03_card h4 {
    font-size: 14px;
    color: #000;
}

#reserv03_card .st h4 {
    padding: 0 0 5px 5px;
    float: left;
}

#reserv03_card .st span {
    font-size: 11px;
    color: #9d9d9d;
    line-height: 30px;
    padding: 5px 140px 0 0;
    float: right;
}

#reserv03_card #radio_select {
    margin: 0 10px 25px 10px;
}

#reserv03_card #radio_select li {
    border-radius: 5px 5px 5px 5px;
    -moz-border-radius: 5px 5px 5px 5px;
    -webkit-radius: 5px 5px 5px 5px;
    font-size: 12px;
    line-height: 30px;
    margin-bottom: 5px;
    padding: 5px 0 5px 10px;
}

#reserv03_card #radio_select li input {
    margin-right: 15px;
}

#reserv03_card #radio_select li p {
    padding-right: 25px;
    float: right;
}

#reserv03_card #radio_select li label, #reserv03_card #radio_select li input {
    cursor: pointer;
}

#reserv03_card #radio_select li label span {
    font-size: 14px;
}

#reserv03_card ul li .btn {
    font-size: 14px;
    margin-left: 20px;
    padding: 4px 12px;
}

#reserv03_card #radio_select li img {
    margin-right: 15px;
}

#reserv03_card #radio_select li.active {
    background: #f8f8f8;
}

#reserv03_card .box {
    border-radius: 5px 5px 5px 5px;
    -moz-border-radius: 5px 5px 5px 5px;
    -webkit-radius: 5px 5px 5px 5px;
    padding: 25px;
    border: 1px solid #eee;
}

#reserv03_card .box h4 {
    margin-bottom: 15px;
}

#reserv03_card .box .card_type {
    zoom: 1;
    margin-bottom: 20px;
    overflow: hidden;
}

#reserv03_card .box .card_type img {
    float: left;
}

#reserv03_card .box .card_type p {
    font-size: 12px;
    padding: 25px;
    float: left;
}

#reserv03_card .box dl {
    margin-bottom: 10px;
    float: left;
}

#reserv03_card .box dt {
    font-size: 11px;
    font-weight: bold;
    line-height: 2;
}

#reserv03_card .box dd select {
    vertical-align: middle;
    border: solid 1px #ccc;
    height: 28px;
}

#reserv03_card .box .card_number {
    margin-right: 20px;
}

#reserv03_card .box dd {
    line-height: 33px;
}

#reserv03_card .box .card_number input {
    vertical-align: bottom;
    width: 160px;
}

#reserv03_card .box select {
    padding: 5px;
}

#reserv03_card .box .btn {
    line-height: 30px;
    margin: 3px 0 0 15px;
    padding: 0 15px;
}

#reserv03_card .message_box {
    color: #519A14;
    text-align: center;
    margin: 15px 0;
    background: #E7FAD8;
}

#reserv03_card p.icon_ng {
    clear: both;
}

/* reserv03_other --------------------------------*/
#reserv03_other .main > p {
    font-size: 12px;
    line-height: 18px;
    padding: 20px 0 0;
}

#reserv03_other .main > p span {
    color: #ccc;
}

#reserv03_other .main .form_area {
    padding: 30px 0 20px;
    position: relative;
}

#reserv03_other .main .form_area dt {
    font-weight: bold;
    padding: 5px 0 0;
    position: absolute;
    line-height: 2.1;
}

#reserv03_other .main .form_area dt:first-of-type {
    padding-top: 0;
}

#reserv03_other .main .form_area dd:first-of-type {
    line-height: 2.1;
    padding-top: 0;
}

#reserv03_other .main .form_area dd {
    padding: 0 0 15px 150px;
}

#reserv03_other .main .form_area input[type="number"] {
    box-sizing: border-box;
    padding: 10px;
    width: 80px;
    border-radius: 8px;
    border: 1px solid #d1d1d1;
}

#reserv03_other .main .form_area .btn {
    font-size: 12px;
    margin: 0 0 0 15px;
    padding: 5px 10px;
}

#reserv03_other .main .form_area select {
    box-sizing: border-box;
    width: 120px;
}

#reserv03_other .main .form_area input[type="text"] {
    box-sizing: border-box;
    width: 240px;
}

#reserv03_other .main .invoice {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    padding: 20px;
    border: solid 1px #eee;
}

#reserv03_other .main .invoice dt {
    font-weight: bold;
}

#reserv03_other .main .invoice dd {
    padding: 10px 0 0;
}

#reserv03_other .main .invoice ul {
    width: 100%;
}

#reserv03_other .main .invoice ul:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#reserv03_other .main .invoice li {
    font-size: 12px;
    padding: 0 15px 0 0;
    float: left;
}

#reserv03_other .main .invoice li label {
    cursor: pointer;
}

#reserv03_other .main .invoice li input {
    margin: 0 10px 0 0;
}

#reserv03_other .next_area .btn03 {
    color: #000;
    width: 100%;
}

#reserv03_other .next_area .btn03:hover {
    background: #fff;
}


/* reserv_point --------------------------------*/
#reserv_point_cart .main {
    padding: 30px 0 0;
    border-top: 1px solid #eee;
}

#reserv_point_cart .notice {
    color: #1dbee5;
}

#reserv_point_cart .box01 {
    margin: 20px 0 0;
    padding: 25px 30px;
    border: solid 1px #dbdbdb;
}

#reserv_point_cart .box01 .amount {
    font-size: 16px;
    padding: 0 0 20px;
}

#reserv_point_cart .box01 .amount strong {
    font-weight: bold;
    color: #dd910b;
}

#reserv_point_cart .box01 dl {
    margin: 0 auto;
    padding: 30px 0 0;
    border-top: solid 1px #dbdbdb;
}

#reserv_point_cart .box01 dt {
    font-size: 18px;
    font-weight: bold;
    padding: 0 10px;
    position: relative;
}

#reserv_point_cart .box01 dt span {
    font-size: 14px;
    font-weight: normal;
    color: #ccc;
    right: 10px;
    position: absolute;
}

#reserv_point_cart .box01 dt span a {
    font-weight: bold;
    color: #000;
}

#reserv_point_cart .box01 .point_select ul {
    padding: 5px 0 0;
    width: 100%;
}

#reserv_point_cart .box01 .point_select ul:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#reserv_point_cart .box01 .point_select li {
    padding: 10px 0 0 20px;
    width: 235px;
    float: left;
}

#reserv_point_cart .box01 .point_select label {
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    box-sizing: border-box;
    border-radius: 10px;
    font-size: 12px;
    text-align: center;
    padding: 15px 0 10px;
    display: block;
    cursor: pointer;
}

#reserv_point_cart .box01 .point_select label.active {
    border: solid 1px #42CBFF;
    background: #E6F9FF;
}

#reserv_point_cart .box01 .point_select input {
    display: none;
}

#reserv_point_cart .box01 .point_select strong {
    font-size: 14px;
    display: block;
}

#reserv_point_cart .box01 .point_select b {
    font-size: 20px;
    line-height: 24px;
}

#reserv_point_cart .box01 .point_select i {
    font-size: 10px;
}

#reserv_point_cart .box01 .point_select span {
    font-size: 10px;
    font-weight: normal;
    color: #aaa;
    line-height: 14px;
    display: block;
}

#reserv_point_cart .box01 .simulation {
    color: #ccc;
    padding: 30px 20px;
}

#reserv_point_cart .box01 .simulation span {
    font-size: 14px;
    font-weight: bold;
    color: #1dbee5;
    display: inline;
}

#reserv_point_cart .box01 .point_payment {
    padding: 20px 5px 30px;
}

#reserv_point_cart .box01 .point_payment li {
    font-size: 16px;
    font-weight: bold;
    padding: 0 50px 0 0;
    display: inline;
}

#reserv_point_cart .btn_area {
    text-align: center;
    padding: 50px 0 0;
}

#reserv_point_cart .btn_area .btn {
    font-size: 16px;
    padding: 10px 0;
    width: 200px;
}

#reserv_point_cart .btn_area span {
    padding: 30px 0 0;
    display: block;
}

/* reserv_point_cart */
#reserv_point_cart .box02 {
    padding: 20px 0;
}

#reserv_point_cart .box02 table {
    box-sizing: border-box;
    border: solid 1px #dbdbdb;
    border-bottom: none;
    width: 100%;
}

#reserv_point_cart .box02 table th, #reserv_point_cart .box02 table td {
    text-align: left;
    border-bottom: solid 1px #dbdbdb;
}

#reserv_point_cart .box02 table th {
    font-size: 16px;
    font-weight: bold;
    color: #5f5f5f;
    padding: 20px;
    width: 160px;
    background: #f7f7f7;
}

#reserv_point_cart .box02 table td {
    padding: 0 20px;
}

#reserv_point_cart .box02 table td p {
    font-size: 12px;
    vertical-align: 5px;
    padding: 0 5px 0 0;
    display: inline-block;
}

#reserv_point_cart .box02 table td p strong {
    font-size: 20px;
}

#reserv_point_cart .box02 table td .point_bonus {
    font-size: 10px;
    color: #1dbee5;
    line-height: 18px;
    vertical-align: 0;
    padding: 0 0 0 35px;
    position: relative;
}

#reserv_point_cart .box02 table td .point_bonus:before {
    font: normal normal normal 14px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    box-sizing: border-box;
    font-size: 10px;
    color: #1dbee5;
    text-align: center;
    padding: 6px 6px 0;
    width: 20px;
    height: 20px;
    top: 10px;
    left: 0;
    display: block;
    background: #ffdff0;
    content: "\f067";
    position: absolute;
}

#reserv_point_cart .box02 table td .point_bonus span {
    font-size: 12px;
    display: block;
}

#reserv_point_cart .box02 table td .point_bonus span strong {
    font-size: 16px;
}

#reserv_point_cart .box03 {
    padding: 30px 40px;
    border: solid 1px #dbdbdb;
}

#reserv_point_cart .box03 h3 {
    font-size: 18px;
    font-weight: bold;
}

#reserv_point_cart #payment_conv dl {
    padding: 20px 0 0;
    position: relative;
}

#reserv_point_cart #payment_conv dt {
    font-size: 16px;
    position: absolute;
}

#reserv_point_cart #payment_conv dd {
    padding: 0 0 0 140px;
}

#reserv_point_cart #payment_conv dd span {
    padding: 5px 0 0;
    display: block;
}

#reserv_point_cart #payment_conv dd p {
    font-size: 16px;
    padding: 0 0 10px;
}

#reserv_point_cart #payment_conv dd a {
    color: #008de7;
}

#reserv_point_cart #payment_conv dd a img {
    vertical-align: -2px;
    margin: 0 5px 0 0;
}

#reserv_point_cart #payment_credit .credit_select {
    box-sizing: border-box;
    padding: 20px;
    width: 100%;
}

#reserv_point_cart #payment_credit .credit_select:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#reserv_point_cart #payment_credit .st {
    zoom: 1;
    overflow: hidden;
}

#reserv_point_cart #payment_credit h4 {
    font-size: 14px;
    color: #000;
}

#reserv_point_cart #payment_credit .st h4 {
    padding: 0 0 5px 5px;
    float: left;
}

#reserv_point_cart #payment_credit .st span {
    font-size: 11px;
    color: #9d9d9d;
    line-height: 30px;
    padding: 5px 38px 0 0;
    float: right;
}

#reserv_point_cart #payment_credit #radio_select li {
    border-radius: 5px 5px 5px 5px;
    -moz-border-radius: 5px 5px 5px 5px;
    -webkit-radius: 5px 5px 5px 5px;
    font-size: 12px;
    line-height: 30px;
    margin-bottom: 5px;
    padding: 5px 0 5px 10px;
}

#reserv_point_cart #payment_credit #radio_select li input {
    margin-right: 15px;
}

#reserv_point_cart #payment_credit #radio_select li p {
    padding-right: 25px;
    float: right;
}

#reserv_point_cart #payment_credit #radio_select li label, #reserv_point_cart #payment_credit #radio_select li input {
    cursor: pointer;
}

#reserv_point_cart #payment_credit #radio_select li label span {
    font-size: 14px;
}

#reserv_point_cart #payment_credit ul li .btn {
    font-size: 14px;
    margin-left: 20px;
    padding: 2px 10px;
}

#reserv_point_cart #payment_credit #radio_select li img {
    margin-right: 15px;
}

#reserv_point_cart #payment_credit #radio_select li.active {
    background: #f8f8f8;
}

#reserv_point_cart #payment_credit .box {
    padding: 25px 0 0;
}

#reserv_point_cart #payment_credit .box h4 {
    margin-bottom: 15px;
}

#reserv_point_cart #payment_credit .box .card_type {
    zoom: 1;
    margin-bottom: 20px;
    overflow: hidden;
}

#reserv_point_cart #payment_credit .box .card_type img {
    float: left;
}

#reserv_point_cart #payment_credit .box .card_type p {
    font-size: 12px;
    padding: 25px;
    float: left;
}

#reserv_point_cart #payment_credit .box dl {
    margin-bottom: 10px;
    float: left;
}

#reserv_point_cart #payment_credit .box dt {
    font-size: 11px;
    font-weight: bold;
    line-height: 12px;
}

#reserv_point_cart #payment_credit .box dd select {
    vertical-align: middle;
    border: solid 1px #ccc;
    height: 28px;
}

#reserv_point_cart #payment_credit .box .card_number {
    margin-right: 20px;
}

#reserv_point_cart #payment_credit .box dd {
    line-height: 33px;
}

#reserv_point_cart #payment_credit .box .card_number input {
    vertical-align: bottom;
    padding: 5px;
    width: 160px;
}

#reserv_point_cart #payment_credit .box select {
    padding: 5px;
}

#reserv_point_cart #payment_credit .box .btn {
    line-height: 30px;
    margin-left: 15px;
    padding: 0 15px;
}

#reserv_point_cart #payment_credit .message_box {
    color: #519A14;
    text-align: center;
    margin: 15px 0;
    background: #E7FAD8;
}

#reserv_point_cart #payment_credit p.icon_ng {
    clear: both;
}

#reserv_point_cart .order_area {
    text-align: center;
    padding: 50px 0 0;
}

#reserv_point_cart .order {
    box-sizing: border-box;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    font-size: 16px;
    font-size: 16px;
    color: #000;
    text-align: center;
    text-decoration: none;
    margin: 0 0 15px;
    padding: 10px 30px;
    border: solid 1px #cd9a02;
    background: url(../../images/order_bg.gif) repeat-x left top #ffd62a;
    cursor: pointer;
}

#reserv_point_cart .order:hover {
    background: url(../../images/order_bg_over.gif) repeat-x left top #f9c700;
}

#reserv_point_cart .order_area .back {
    color: #008de7;
}

/* thanks */
#reserv_point_cart .point_cart_thanks {
    padding: 0 20px;
}

#reserv_point_cart .point_cart_thanks p.link {
    padding: 15px 0 50px;
}

#reserv_point_cart .point_cart_thanks p.link a {
    color: #008de7;
}

#reserv_point_cart .point_cart_thanks p.link img {
    vertical-align: middle;
    margin: 0 8px 0 0;
}

#reserv_point_cart .point_cart_thanks .note01 {
    font-size: 10px;
    color: #a9a9a9;
    line-height: 18px;
    margin: 10px 0 0;
}

/* reserv_conf --------------------------------*/
#reserv_conf .catch {
    font-size: 10px;
    line-height: 18px;
    margin-bottom: 20px;
}

#reserv_conf .catch span {
    color: #ff0000;
    padding: 10px 0 0;
    display: block;
}

#reserv_conf h3 {
    margin: 0;
}

#reserv_conf h4 {
    font-size: 14px;
    color: #1dbee5;
    margin-top: 5px;
    background: #eee;
    padding: 10px;
}

#reserv_conf h4 span {
    font-size: 10px;
    font-weight: normal;
    color: #a9a9a9;
    padding: 0 0 0 45px;
}

#reserv_conf .main dl {
    padding: 40px 0 40px 15px;
    position: relative;
}

#reserv_conf .main dl:nth-child(4) {
    padding-bottom: 0;
}

#reserv_conf .main .btn_point dt:nth-of-type(2) {
    line-height: 3;
}

#reserv_conf .main .btn_point dd {
    padding-bottom: 30px;
}

#reserv_conf .main .btn_point dd p.use_point {
    color: #a9a9a9;
}

#reserv_conf .main .btn_point dd p.attention {
    font-size: 12px;
    background: #333;
    color: #fff;
    border-radius: 18px;
    display: inline-block;
    margin: 6px 0 0 120px;
    padding: 2px 12px;
    position: relative;
}

#reserv_conf .main .btn_point dd p.attention:before {
    content: "";
    position: absolute;
    top: -12px;
    left: 78%;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 5px 15px 5px;
    border-color: transparent transparent #333333 transparent;
}

#reserv_conf .main dt {
    font-weight: bold;
    position: absolute;
}

#reserv_conf .main dd {
    padding: 0 0 20px 135px;
}

#reserv_conf .main dd a {
    margin: 0 0 0 15px;
}

#reserv_conf .main dd p {
    padding: 0 0 5px;
}

#reserv_conf .main dd p span.birthday_area {
    width: 218px;
    display: inline-block;
}

#reserv_conf .main dd input[type="number"] {
    width: 100px;
}

#reserv_conf .main dd input[type="text"] {
    width: 204px;
}

#reserv_conf .main dd input.error {
    border: solid 1px #1dbee5;
    background: #FFDBE4;
}

#reserv_conf .main dd span.error {
    font-size: 10px;
    font-weight: normal;
    color: #900;
    padding: 0 0 0 25px;
    min-height: 22px;
    display: block;
    background: url(../../images/icon_notice.png) no-repeat 0 2px;
}

#reserv_conf .main dd .btn {
    box-sizing: border-box;
    font-size: 12px;
    margin: 0 0 0 20px;
    padding: 3px 15px;
    height: 41px;
}

#reserv_conf .main dd .used {
    font-size: 12px;
    color: #999;
    padding: 0 0 0 30px;
}

#reserv_conf .main dd .using {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    font-size: 12px;
    color: #63CEFF;
    margin: 0 0 0 10px;
    padding: 0 5px 0 30px;
    border: solid 1px #63CEFF;
    width: 85px;
    height: 22px;
    display: inline-block;
    background: url(../../images/check.png) no-repeat 7px 7px;
    cursor: pointer;
}

#reserv_conf .main dd .using:hover {
    background: url(../../images/check.png) no-repeat 7px 7px #fafafa;
}

#reserv_conf .main dd .birthday {
    margin: 10px 0 0;
    padding: 15px 0 0;
    border-top: dotted 1px #ddd;
}

#reserv_conf .main dd .birthday input {
    margin: 0;
}

#reserv_conf .side .teller {
    padding: 15px;
}

#reserv_conf .side .teller strong {
    color: #1dbee5;
}

#reserv_conf .side .teller dl {
    padding: 10px 0 15px;
    position: relative;
}

#reserv_conf .side .teller dt {
    position: absolute;
}

#reserv_conf .side .teller dt img {
    width: 95px;
    height: auto;
}

#reserv_conf .side .teller dd {
    padding: 70px 0 0 115px;
}

#reserv_conf .side .teller dd span {
    font-size: 10px;
    color: #999;
    line-height: 14px;
    display: block;
}

#reserv_conf .side .teller p {
    font-size: 12px;
    line-height: 18px;
}

#reserv_conf .side .teller .desc dd {
    font-weight: bold;
}

#reserv_conf .side .teller .order_number {
    margin: 15px 10px 8px;
}

#reserv_conf .side .teller .order_number span {
    margin-left: 16px;
    font-weight: bold;
    vertical-align: super;
}

#reserv_conf .side .detail {
    -webkit-border-bottom-right-radius: 5px;
    -webkit-border-bottom-left-radius: 5px;
    -moz-border-radius-bottomright: 5px;
    -moz-border-radius-bottomleft: 5px;
    border-bottom-right-radius: 5px;
    border-bottom-left-radius: 5px;
    padding: 15px;
    background: #f8f8f8;
}

#reserv_conf .side .detail dl {
    font-size: 10px;
    line-height: 18px;
    position: relative;
}

#reserv_conf .side .detail dt {
    position: absolute;
}

#reserv_conf .side .detail dd {
    padding: 0 0 0 70px;
}

#reserv_conf .side .detail dd a {
    color: #0751e8;
}

#reserv_conf .side .detail .order {
    box-sizing: border-box;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    font-size: 16px;
    color: #000;
    text-align: center;
    text-decoration: none;
    margin: 15px auto;
    padding: 8px;
    border: solid 1px #cd9a02;
    width: 220px;
    display: block;
    background: url(../../images/order_bg.gif) repeat-x left top #ffd62a;
}

#reserv_conf .side .detail .order:hover {
    background: url(../../images/order_bg_over.gif) repeat-x left top #f9c700;
}

#reserv_conf .side .detail p {
    font-size: 10px;
    text-align: right;
}

#reserv_conf .side .detail p span {
    color: #999;
    padding: 0 0 0 22px;
    min-height: 20px;
    display: inline-block;
    background: url(../../images/icon_clock.png) no-repeat 0 2px;
}

#reserv_conf .errorbox {
    border-radius: 8px;
    font-size: 16px;
    font-weight: bold;
    color: #ff0000;
    text-align: center;
    margin: 0 0 30px;
    padding: 10px;
    background: #F0F0F0;
}

/* notice */
#reserv_conf .side .notice {
    font-size: 12px;
    color: #fff;
    line-height: 20px;
    text-align: center;
    margin: 5px 0 0;
    padding: 10px;
    background: #000;
}

#reserv_conf .side .notice img {
    vertical-align: -3px;
    margin: 0 5px 0 0;
}

/* modal */
#reserv_conf #modal {
    display: none;
}

.modal_box {
    padding: 5px 10px;
    position: relative;
}

.modal_box .close {
    width: 21px;
    height: 21px;
    top: 0;
    right: 0;
    display: block;
    position: absolute;
}

#tel_area strong {
    font-size: 16px;
}

#tel_area ul {
    padding: 10px 25px 50px;
}

#tel_area li {
    padding: 15px 0 0 20px;
}

#tel_area .active {
    background: url(../../images/icon_check.gif) no-repeat 0 19px;
}

#tel_area li span {
    color: #900;
    padding: 0 0 0 20px;
}

#tel_area li .btn {
    font-size: 12px;
    margin: 0 0 0 20px;
    padding: 0 20px;
    display: inline-block;
}

#tel_area p {
    padding: 0 0 5px;
}

#tel_area p a {
    font-weight: bold;
    color: #30cbff;
}

#using_area strong {
    font-size: 16px;
}

#using_area ul {
    padding: 15px 25px 30px;
}

#using_area li {
    padding: 10px 0 0 20px;
}

#using_area .active {
    padding: 12px 0 2px 20px;
    background: url(../../images/icon_check.gif) no-repeat 0 18px;
}

#using_area li span {
    color: #900;
    padding: 0 0 0 20px;
}

#using_area li a span {
    font-size: 10px;
    color: #999;
    padding: 0;
}

#using_area li .btn {
    font-size: 12px;
    padding: 2px 10px;
    display: inline-block;
}

#using_area p {
    font-size: 10px;
    color: #999;
    line-height: 18px;
}

#notification_area strong {
    font-size: 16px;
}

#notification_area ul {
    padding: 15px 25px 30px;
}

#notification_area li {
    padding: 10px 0 0 20px;
}

#notification_area .active {
    padding: 12px 0 2px 20px;
    background: url(../../images/icon_check.gif) no-repeat 0 18px;
}

#notification_area li span {
    color: #900;
    padding: 0 0 0 20px;
}

#notification_area li a span {
    font-size: 10px;
    color: #999;
    padding: 0;
}

#notification_area li .btn {
    font-size: 12px;
    padding: 2px 10px;
    display: inline-block;
}

#notification_area p {
    font-size: 10px;
    color: #999;
    line-height: 18px;
}

/* reserv_thanks --------------------------------*/
#reserv_thanks .lead_text {
    font-weight: bold;
    font-size: 18px;
    margin-top: 20px;
}

#reserv_thanks .catch {
    font-size: 10px;
    line-height: 18px;
}

#reserv_thanks .catch span {
    color: #1dbee5;
    padding: 10px 0 0;
    display: block;
}

#reserv_thanks .teller dl {
    padding: 0 10px;
    position: relative;
}

#reserv_thanks .teller dt {
    position: absolute;
}

#reserv_thanks .teller dt img {
    width: 100px;
    height: auto;
}

#reserv_thanks .teller dd {
    padding: 0 0 0 115px;
}

#reserv_thanks .teller dd span {
    font-size: 10px;
    color: #999;
    line-height: 18px;
    display: block;
}

#reserv_thanks .teller dd p {
    font-size: 12px;
    padding: 20px 0 5px;
}

#reserv_thanks .teller dd strong {
    padding: 0 0 15px;
    display: block;
}

#reserv_thanks .after_process {
    box-sizing: border-box;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    margin: 40px 0 0;
    padding: 15px 50px 15px 15px;
    width: 100%;
    background: #f8f8f8;
}

#reserv_thanks .after_process:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#reserv_thanks .after_process h4 {
    -webkit-border-radius: 60px;
    -moz-border-radius: 60px;
    border-radius: 60px;
    box-sizing: border-box;
    color: #fff;
    line-height: 18px;
    padding: 35px 0;
    width: 110px;
    background: #1dbee5;
    float: left;
    text-align: center;
}

#reserv_thanks .after_process ul {
    font-size: 12px;
    width: 620px;
    float: right;
}

#reserv_thanks .after_process li {
    text-indent: -1.5em;
    padding: 5px 0 0;
}

#reserv_thanks .after_process li:first-child:after {
    font: normal normal normal 26px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    color: #1dbee5;
    text-align: center;
    display: block;
    content: "\f0d7";
}

#reserv_thanks .btn_area {
    text-align: center;
    padding: 30px 0;
}

#reserv_thanks .btn_area .btn {
    padding: 15px 20px;
    display: inline-block;
}

#reserv_thanks h4 {
    font-size: 14px;
    color: #1dbee5;
    padding: 0 0 10px;
}

#reserv_thanks .troule {
    padding: 0 0 40px;
}

#reserv_thanks .troule .t_box {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    box-sizing: border-box;
    margin: 15px auto 0;
    border: solid 1px #ccc;
    width: 760px;
}

#reserv_thanks .troule .t_box h5 {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    font-size: 14px;
    font-weight: normal;
    padding: 8px 40px 8px 15px;
    background: url(../../images/icon_plus.gif) no-repeat 730px 11px;
    cursor: pointer;
}

#reserv_thanks .troule .t_box .active {
    background: url(../../images/icon_minus.gif) no-repeat 730px 11px;
}

#reserv_thanks .troule .t_box div {
    box-sizing: border-box;
    font-size: 12px;
    padding: 30px 35px;
    border-top: solid 1px #ccc;
    width: 100%;
    display: none;
}

#reserv_thanks .troule .t_box div:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#reserv_thanks .troule .t_box .btn {
    margin: 20px 0 0;
    padding: 2px 30px;
    display: inline-block;
}

#reserv_thanks .troule .t_box p.fl {
    width: 440px;
}

#reserv_thanks .troule .t_box p.fl span {
    text-indent: -1em;
    padding: 20px 0 0 12px;
    display: block;
}

#reserv_thanks .troule .t_box dt {
    padding: 0 0 5px;
}

#reserv_thanks .troule .t_box dd {
    padding: 0 0 10px;
}

#reserv_thanks .troule .note {
    font-size: 12px;
    color: #a9a9a9;
    margin: 0 auto;
    padding: 15px 0 0;
    width: 760px;
}

#reserv_thanks .contact div {
    box-sizing: border-box;
    margin: 20px auto;
    padding: 15px;
    width: 760px;
    background: #f8f8f8;
}

#reserv_thanks .contact div:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#reserv_thanks .contact div h5 {
    font-size: 14px;
    font-weight: bold;
    float: left;
}

#reserv_thanks .contact div p {
    float: left;
}

#reserv_thanks .contact div p.times {
    padding: 15px 0 0 30px;
}

#reserv_thanks .contact div p img {
    margin: 20px 30px 0 20px;
}

#reserv_thanks .contact span {
    font-size: 10px;
    color: #999;
    line-height: 14px;
}

#reserv_thanks .contact strong {
    font-size: 14px;
    color: #000;
    line-height: 25px;
    display: block;
}

/* card --------------------------------*/
#mypage_card h3 {
    margin-bottom: 10px;
}

#mypage_card .box {
    box-sizing: border-box;
    margin: 20px 0 0;
    width: 100%;
}

#mypage_card .box:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#mypage_card .box .fl {
    width: 445px;
}

#mypage_card .box .fl h3 {
    font-size: 16px;
    font-weight: normal;
    color: #1dbee5;
}

#mypage_card .st {
    zoom: 1;
    margin-top: 30px;
    padding: 15px 0 5px;
    border-top: 1px solid #dbdbdb;
    overflow: hidden;
}

#mypage_card .st span {
    font-size: 11px;
    color: #9d9d9d;
    line-height: 30px;
    padding: 5px 140px 0 0;
    float: right;
}

#mypage_card #radio_select {
    margin: 0 10px 25px 10px;
}

#mypage_card #radio_select li {
    border-radius: 5px 5px 5px 5px;
    -moz-border-radius: 5px 5px 5px 5px;
    -webkit-radius: 5px 5px 5px 5px;
    font-size: 12px;
    line-height: 30px;
    margin-bottom: 5px;
    padding: 5px 0 5px 10px;
}

#mypage_card #radio_select li input {
    margin-right: 15px;
}

#mypage_card #radio_select li p {
    padding-right: 25px;
    float: right;
}

#mypage_card #radio_select li label, #mypage_card #radio_select li input {
    cursor: pointer;
}

#mypage_card #radio_select li label span {
    font-size: 14px;
}

#mypage_card ul li .btn {
    font-size: 14px;
    margin-left: 20px;
    padding: 2px 10px;
}

#mypage_card #radio_select li img {
    margin-right: 15px;
}

#mypage_card #radio_select li.active {
    background: #f8f8f8;
}

#mypage_card .box {
    border-radius: 5px 5px 5px 5px;
    -moz-border-radius: 5px 5px 5px 5px;
    -webkit-radius: 5px 5px 5px 5px;
    padding: 25px;
    border: 1px solid #dbdbdb;
}

#mypage_card .box h3 {
    margin-bottom: 15px;
}

#mypage_card .box .card_type {
    zoom: 1;
    margin-bottom: 20px;
    overflow: hidden;
}

#mypage_card .box .card_type img {
    float: left;
}

#mypage_card .box .card_type p {
    padding: 25px;
    float: left;
}

#mypage_card .box dl {
    margin-bottom: 10px;
    float: left;
}

#mypage_card .box dt {
    font-size: 11px;
    font-weight: bold;
    line-height: 12px;
}

#mypage_card .box dd select {
    vertical-align: bottom;
}

#mypage_card .box .card_number {
    margin-right: 20px;
}

#mypage_card .box dd {
    line-height: 4;
}

#mypage_card .box .card_number input {
    width: 170px;
    padding: 12px;
    border-radius: 8px;
    border: 1px solid #d1d1d1;
}

#mypage_card .box dd select {
    padding: 6px;
    border-radius: 8px;
    border: 1px solid #d1d1d1;
    margin-bottom: 10px;
}

#mypage_card .box .btn {
    line-height: 30px;
    margin-left: 15px;
    padding: 0 15px;
}

#mypage_card .description {
    font-size: 10px;
    color: #acacac;
    padding: 50px 0 25px;
}

#mypage_card .description a {
    color: #39c7ef;
}

#mypage_card .nocard {
    margin-top: 30px;
    padding: 30px 0 15px;
    border-top: 1px solid #dbdbdb;
}

#mypage_card .message_box {
    color: #519A14;
    text-align: center;
    margin: 15px 0;
    background: #E7FAD8;
}

#mypage_card p.icon_ng {
    clear: both;
}

/* thanks --------------------------------*/
#mypage_thanks .box {
    box-sizing: border-box;
    text-align: center;
    padding: 40px;
    border: solid 1px #dbdbdb;
    width: 100%;
}

#mypage_thanks .box p {
    padding-top: 20px;
}

#mypage_thanks .box .btn {
    padding: 8px 30px;
    display: inline-block;
}


/* kantan --------------------------------*/
#kantan .notice {
    font-size: 12px;
    color: #8f8f8f;
    padding: 0 0 20px;
    display: block;
}

#kantan h2 {
    font-size: 14px;
    padding: 1px 10px 0;
    border-top: solid 1px #ccc;
    border-bottom: solid 1px #ccc;
    background: url(../../images/kantan_st_bg.gif) repeat-x left bottom #fff;
}

#kantan .box {
    padding: 5px;
}

#kantan .edit {
    font-weight: normal;
    margin: 0 0 0 30px;
}

#kantan .teller {
    padding: 30px 0;
    min-height: 90px;
    position: relative;
}

#kantan .teller dt {
    position: absolute;
}

#kantan .teller dt img {
    width: 80px;
    height: auto;
}

#kantan .teller dd {
    padding: 10px 0 0 100px;
}

#kantan .teller dd p {
    font-weight: bold;
}

#kantan .teller dd .status {
    text-align: center;
    margin: 5px 0 0;
    width: 135px;
}

#kantan .teller dd .status p {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    font-size: 12px;
    font-weight: normal;
    padding: 3px;
}

#kantan .date {
    font-weight: bold;
    padding: 50px 0;
}

/* schedule */
#kantan .schedule_tab {
    padding: 30px 0;
}

#kantan .schedule_tab ul {
    width: 100%;
}

#kantan .schedule_tab ul:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#kantan .schedule_tab li {
    box-sizing: border-box;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    font-weight: bold;
    text-align: center;
    border: solid 1px #cecece;
    width: 200px;
    float: left;
}

#kantan .schedule_tab li:nth-child(2) {
    margin: 0 15px;
}

#kantan .schedule_tab li a, #kantan .schedule_tab li span {
    text-decoration: none;
    padding: 35px 0 0;
    display: block;
}

#kantan .schedule_tab li a {
    padding: 35px 0;
}

#kantan .schedule_tab .current {
    border: solid 2px #cecece;
    background: #f9f9f9;
}

#kantan .schedule_tab .off {
    color: #a4a4a4;
}

/* entry_box */
#kantan h3 {
    font-size: 14px;
    font-weight: normal;
    padding: 30px 0 20px;
    border-top: solid 1px #d0d0d0;
    position: relative;
}

#kantan h3:before {
    font: normal normal normal 14px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    font-size: 12px;
    color: #ccc;
    color: #35cdff;
    padding: 0 10px;
    display: inline-block;
    content: "\f04b";
}

#kantan h3:first-child {
    border-top: none;
}

#kantan h3 span {
    color: #888;
    top: 30px;
    right: 0;
    position: absolute;
}

#kantan .entry_box {
    padding: 0 0 30px 30px;
    width: 560px;
}

#kantan .entry_box:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#kantan .entry_box .entry_st {
    font-weight: bold;
    color: #1dbee5;
    line-height: 18px;
    text-align: center;
    padding: 8px 0 7px;
    border: solid 1px #1dbee5;
    width: 70px;
    display: block;
    float: left;
}

#kantan .entry_box .wait {
    width: 210px;
    float: left;
}

#kantan .entry_box .wait:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#kantan .entry_box .wait div {
    border-top: solid 5px #fff;
    border-left: solid 10px #fff;
    float: left;
}

#kantan .entry_box .wait div.working p {
    background: #ef4242;
}

#kantan .entry_box .wait div p {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    font-size: 10px;
    color: #fff;
    line-height: 12px;
    text-align: center;
    background: #666;
}

#kantan .entry_box .wait ul:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#kantan .entry_box .wait li {
    border-bottom: solid 2px #fff;
    min-width: 20px;
    float: left;
    white-space: nowrap;
}

#kantan .entry_box .wait li.count {
    font-size: 12px;
    padding: 4px 8px 0;
}

#kantan .entry_box .wait div.working li {
    text-align: center;
    width: 40px;
}

#kantan .entry_box .zero {
    min-height: 32px;
    min-width: 60px;
}

#kantan .entry_box .zero .count {
    text-align: center;
    min-width: 40px;
}

#kantan .entry_box .entry_btn {
    font-size: 12px;
    line-height: 18px;
    text-decoration: none;
    padding: 10px 0 0 80px;
    width: 192px;
    height: 49px;
    background: url(../../images/entry_btn.gif) no-repeat left top;
    float: left;
}

/*  Campaign
-----------------------------------------------------------------------------*/
/* form */
#camp .notice {
    padding: 0 0 20px;
}

#camp .notice .red {
    color: #ff3a20;
}

#camp .box01 .sstitle {
    margin: 0 0 20px;
}

#camp .form_box .box {
    padding: 30px 30px 20px 30px;
    border: 1px solid #dbdbdb;
    border-bottom: none;
}

#camp .form_box .box:last-child {
    border: 1px solid #dbdbdb;
}

#camp .form_box .sst {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 40px;
    padding: 10px 15px;
    background: #FFF9FB;
    position: relative;
}

#camp .form_box .sst .btn {
    font-size: 14px;
    font-weight: normal;
    padding: 2px 10px;
    top: 7px;
    right: 5px;
    position: absolute;
}

#camp .form_box dl {
    position: relative;
}

#camp .form_box dt {
    font-weight: bold;
    color: #000;
    line-height: 20px;
    text-align: right;
    width: 280px;
    position: absolute;
}

#camp .form_box dd {
    padding: 0 0 30px 310px;
}

#camp .form_box input[type=text] {
    font-size: 14px;
    width: 200px;
}

#camp .form_box input.w_ss {
    width: 80px;
}

#camp .form_box .zipSuggest input.w_ss {
    width: 75px;
}

#camp .form_box #zipSuggest {
    -webkit-border-radius: 5px;
    border-radius: 5px;
    font-size: 12px;
    font-weight: bold;
    color: #1dbee5;
    text-decoration: none;
    margin-left: 5px;
    padding: 2px 8px;
    background: #ededed;
}

#camp .form_box textarea {
    font-size: 14px;
    width: 200px;
    height: 50px;
}

#camp .form_box input[type=checkbox], #camp .form_box input[type=radio] {
    vertical-align: middle;
    margin-right: 10px;
}

#camp .form_box #enquete dt {
    box-sizing: border-box;
    text-align: left;
    text-indent: -2.5em;
    padding: 0 0 0 3em;
}

#camp .form_box #enquete dt span {
    font-weight: normal;
}

#camp .form_box #enquete dd {
    min-height: 80px;
}

#camp .form_box #enquete .t_area {
    padding: 5px 0 0 0;
}

#camp .form_box #enquete .t_area textarea {
    box-sizing: border-box;
    width: 80%;
    height: 80px;
}

#camp .box_pink {
    margin: 0 0 20px;
    padding: 10px 20px;
    background-color: #fbddde;
}

#camp .box_pink ul, #camp #ppBox {
    margin: 0 0 10px 0;
    border: 1px solid #ccc;
    height: 200px;
    background: #fff;
    overflow: auto;
}

#camp .box_pink dl {
    margin: 10px 0;
}

#camp .box_pink dl dt {
    font-size: 16px;
    font-weight: bold;
    color: #ff407b;
}

#camp .box_pink ul {
    padding: 10px 20px;
}

#camp #ppBox ol {
    list-style-type: decimal;
    margin-left: 20px;
    padding: 10px 20px;
}

#camp #ppBox ol li {
    list-style-type: decimal;
    margin: 0 0 10px 20px;
}

#camp .box_blackline {
    padding: 30px;
    background: #f7f7f7;
}

#camp .box_blackline p {
    margin-bottom: 10px;
}

#camp .box_blackline h4 {
    font-size: 16px;
    font-weight: bold;
    color: #ff407b;
    line-height: 28px;
    padding: 0 0 15px;
}

#camp .box_blackline ol {
    list-style-type: decimal;
    margin-left: 20px;
    padding: 10px 20px;
}

#camp .box_blackline ol li {
    list-style-type: decimal;
    margin: 0 0 10px 20px;
}

#camp .box_blackline ol.red {
    color: #e64343;
}

#camp .btnbox p {
    text-align: center;
    padding: 10px;
}

#camp .btnbox ul {
    text-align: center;
    margin: 20px auto;
}

#camp .btnbox .btn01 {
    -webkit-border-radius: 10px;
    border-radius: 10px;
    font-size: 18px;
    font-weight: bold;
    color: #fff;
    text-align: center;
    text-decoration: none;
    margin: 0 5px;
    padding: 10px 20px;
    border: none;
    display: inline-block;
    background: #1dbee5;
    cursor: pointer;
    position: relative;
}

/*  recruit
-----------------------------------------------------------------------------*/
/* recruit_form --------------------------------*/
#recruit_form h4 {
    margin: 20px 0 0;
}

#recruit_form .box {
    padding: 20px 0 0;
    width: 100%;
}

#recruit_form .box:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#recruit_form .notice {
    width: 500px;
    float: left;
}

#recruit_form .notice dt {
    font-size: 16px;
    font-weight: bold;
    color: #1dbee5;
    padding: 0 0 10px;
}

#recruit_form .notice ul {
    border-top: dotted 1px #ccc;
}

#recruit_form .notice li {
    padding: 10px 0;
    border-bottom: dotted 1px #ccc;
}

#recruit_form .ssl {
    font-size: 10px;
    color: #999;
    line-height: 18px;
    width: 200px;
    float: right;
}

#recruit_form .ssl dt {
    text-align: center;
    padding: 10px 0 20px;
}

#recruit_form .notice_text {
    color: #ff391f;
    padding: 20px 0 0;
}

/* form */
#recruit_form .form_cont {
    margin: 30px 0 0;
    padding: 30px;
    border: 1px solid #dbdbdb;
}

#recruit_form .form_cont .sst {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 40px;
    padding: 10px 15px;
    background: #f3fdff;
    position: relative;
}

#recruit_form .form_cont dl {
    position: relative;
}

#recruit_form .form_cont dt {
    font-weight: bold;
    color: #000;
    line-height: 20px;
    text-align: right;
    width: 220px;
    position: absolute;
}

#recruit_form .form_cont dd {
    padding: 0 0 30px 250px;
}

#recruit_form .form_cont dd li {
    display: inline-block;
}

#recruit_form .form_cont dd li li {
    padding-top: 10px;
}

#recruit_form .form_cont input[type="text"] {
    width: 50%;
}

#recruit_form .form_cont input[type="email"] {
    width: 50%;
}

#recruit_form .form_cont input.w_ss {
    width: 15%;
}

#recruit_form .form_cont .zipSuggest input.w_ss {
    width: 75px;
}

#recruit_form .form_cont #zipSuggest {
    -webkit-border-radius: 5px;
    border-radius: 5px;
    font-size: 12px;
    font-weight: bold;
    color: #1dbee5;
    text-decoration: none;
    margin-left: 5px;
    padding: 2px 8px;
    background: #ededed;
}

#recruit_form .form_cont input.w_s {
    width: 30%;
}

#recruit_form .form_cont input.w_l {
    width: 80%;
}

#recruit_form .form_cont textarea {
    width: 90%;
    height: 80px;
}

#recruit_form .form_cont .zipbtn {
    font-size: 12px;
    padding: 2px 10px;
}

#recruit_form .privacy {
    margin: 30px 0 0;
    padding: 30px;
    background: #F9F9F9;
}

#recruit_form .privacy h4 {
    font-size: 16px;
    font-weight: bold;
    margin: 0 0 10px;
}

#recruit_form .privacy ul {
    color: #de1500;
    margin: 5px 0 10px;
}

#recruit_form .privacy .kiyaku {
    font-size: 12px;
    line-height: 16px;
    margin: 0 0 10px;
    padding: 10px;
    border: 1px solid #ccc;
    height: 150px;
    background: #fff;
    overflow: auto;
}

#recruit_form .privacy .kiyaku dl {
    padding: 0;
    width: 100%;
    position: static;
}

#recruit_form .privacy .kiyaku dt {
    text-align: left;
    padding: 10px 0 10px;
    width: 100%;
    position: static;
}

#recruit_form .privacy .kiyaku dd {
    padding: 0;
    width: 100%;
    position: static;
}

#recruit_form .privacy .kiyaku ul {
    color: #000;
}

#recruit_form .align_c {
    margin-top: 30px;
}

#recruit_form .btn_area {
    text-align: center;
    padding: 30px 0 0;
}

#recruit_form .btn_area .btn01 {
    -webkit-border-radius: 10px;
    border-radius: 10px;
    font-size: 18px;
    font-weight: bold;
    color: #fff;
    text-align: center;
    text-decoration: none;
    margin: 0 5px;
    padding: 10px 20px;
    border: none;
    display: inline-block;
    background: #1dbee5;
    cursor: pointer;
    position: relative;
}

#recruit_form .form_cont .thanks {
    text-align: center;
    margin: 0 0 30px;
}

/*  One Phrase
-----------------------------------------------------------------------------*/
#onephrase .c_wrapper {
    text-align: center;
}

#onephrase #result a {
    font-family: 'qMmpS Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', Verdana, sans-serif;
    font-weight: bold;
    text-decoration: none;
}

#onephrase .select_area {
    padding: 30px 0 0 0;
}

#onephrase select {
    padding: 5px;
}

#onephrase #onephrase_area {
    height: 950px;
    position: relative;
}

#onephrase #onephrase_area #result {
    width: 100%;
    height: 800px;
}

#onephrase #onephrase_area .pic {
    height: 370px;
    z-index: 999;
    left: -20px;
    bottom: 0;
    position: absolute;
}

#onephrase #onephrase_area .pic ul {
    position: relative;
}

#onephrase #onephrase_area .pic li {
    top: 0;
    position: absolute;
}

#onephrase #onephrase_area .pic li span {
    width: 260px;
    height: 100px;
    top: 0;
    display: block;
    position: absolute;
}

#onephrase #onephrase_area .pic li .eye03 {
    background: url(../../images/chara03_eye.png) no-repeat;
}

#onephrase #onephrase_area img {
    display: block;
}

#onephrase #onephrase_area .btn_area {
    text-align: center;
    width: 100%;
    bottom: 190px;
    display: block;
    position: absolute;
}

#onephrase #onephrase_area .btn_area a {
    border-radius: 5px;
    font-size: 20px;
    font-weight: bold;
    color: #1dbee5;
    text-decoration: none;
    padding: 17px 20px 15px 60px;
    border: 1px solid #ccc;
    display: inline-block;
    background: url(../../images/icon_reload.gif) no-repeat 18px 14px #fff;
}

#onephrase #onephrase_area .btn_area a:hover {
    background-color: #fafafa;
}

#onephrase .pageft ul {
    width: 990px;
}

#onephrase .pageft ul:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#onephrase .pageft li {
    border-right: solid 20px #fff;
    float: left;
}

/*  Navigator
-----------------------------------------------------------------------------*/
#navigator .title a:hover {
    opacity: 1.0;
    filter: alpha(opacity=100);
}

#navigator .submenu {
    padding-top: 40px;
}

#navigator .c_wrapper {
    letter-spacing: 0;
    margin: 0 15px;
    padding: 70px 0 20px;
    background: url(../../images/bg.png);
    position: relative;
}

#navigator .pic {
    top: 20px;
    left: 10px;
    position: absolute;
}

#navigator .pic ul {
    position: relative;
}

#navigator .pic li {
    top: 0;
    position: absolute;
}

#navigator .pic li span {
    width: 260px;
    height: 100px;
    top: 0;
    display: block;
    position: absolute;
}

#navigator .pic li .eye01 {
    background: url(../../images/chara01_eye.png) no-repeat;
}

#navigator .pic li .eye02 {
    background: url(../../images/chara02_eye.png) no-repeat;
}

#navigator .pic li .eye03 {
    background: url(../../images/chara03_eye.png) no-repeat;
}

#navigator .pic span.name {
    z-index: 3;
    top: 327px;
    left: 9px;
    display: block;
    position: absolute;
}

#navigator .bubble {
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    box-sizing: border-box;
    margin: 0 0 0 300px;
    padding: 10px 20px;
    border: solid 1px #ccc;
    width: 610px;
    min-height: 610px;
    background: #FFFFFF;
    position: relative;
}

#navigator .bubble:after {
    width: 100px;
    height: 50px;
    top: 40px;
    left: -100px;
    background: url(../../images/bubble_tail.png) no-repeat left top;
    content: '';
    position: absolute;
}

#navigator .bubble p {
    font-size: 16px;
    font-weight: normal;
    line-height: 35px;
    padding: 20px 15px 0;
}

#navigator .bubble p strong {
    font-weight: normal;
}

#navigator .btn_area {
    box-sizing: border-box;
    padding: 10px 10px 0;
    width: 100%;
}

#navigator .btn_area:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#navigator .btn_area li {
    box-sizing: border-box;
    padding: 15px 10px 0;
    width: 50%;
    float: left;
}

#navigator .btn_area a {
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    font-size: 22px;
    color: #fff;
    line-height: 30px;
    text-align: center;
    text-decoration: none;
    padding: 40px 0 35px;
    display: block;
    background: #1dbee5;
    position: relative;
}

#navigator .btn_area a:hover {
    background: rgba(29, 190, 229, 0.8);
}

#navigator .btn_area a span {
    text-align: left;
    display: inline-block;
}

#navigator .btn_area a .new {
    font-size: 12px;
    font-weight: bold;
    color: #000;
    top: 18px;
    left: 25px;
    position: absolute;
}

#navigator .bubble .btn_select {
    -webkit-border-radius: 25px;
    -moz-border-radius: 25px;
    border-radius: 25px;
    font-family: ' CI', Meiryo, " qMmpSPro W3", "Hiragino Kaku Gothic Pro", Osaka, "lr oSVbN", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
    font-size: 16px;
    color: #fff;
    line-height: 25px;
    text-align: center;
    text-decoration: none;
    margin: 15px 0 10px;
    padding: 12px 0 10px;
    width: 200px;
    display: inline-block;
    background: #1dbee5;
}

#navigator .bubble .btn_select:hover {
    background: rgba(29, 190, 229, 0.8);
}

#navigator #btn_type a {
    font-size: 19px;
    text-align: left;
    padding: 22px 20px 20px;
}

#navigator #btn_type a.nothing {
    text-align: center;
    padding: 42px 0 0;
}

#navigator #btn_type span {
    font-size: 12px;
    font-weight: normal;
    line-height: 20px;
    padding: 5px 0 0;
}

#navigator .btn_backarea {
    margin: 10px 0 10px 10px;
}

#navigator .btn_backarea a {
    margin: 0 5px;
}

#navigator .btn_backarea .btn_select {
    padding: 12px 20px 10px;
    width: auto;
}

#navigator .btn_backarea .btn_back {
    -webkit-border-radius: 25px;
    -moz-border-radius: 25px;
    border-radius: 25px;
    font-family: ' CI', Meiryo, " qMmpSPro W3", "Hiragino Kaku Gothic Pro", Osaka, "lr oSVbN", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
    font-size: 16px;
    color: #fff;
    line-height: 25px;
    text-align: center;
    text-decoration: none;
    margin: 20px 5px 10px;
    padding: 12px 25px 10px 60px;
    width: auto;
    display: inline-block;
    background: url(../../images/back.png) no-repeat 20px 15px #ccc;
}

#navigator .btn_backarea .btn_back:hover {
    background: url(../../images/back.png) no-repeat 20px 15px #ddd;
}

#navigator #btn_genre li {
    width: 182px;
}

#navigator #btn_genre a {
    padding: 25px 0;
}

#navigator .teller dl {
    font-size: 16px;
    line-height: 35px;
    padding: 10px 15px 30px;
    position: relative;
}

#navigator .teller dt {
    padding: 10px 0 0;
    position: absolute;
}

#navigator .teller dt img {
    width: 80px;
    height: auto;
}

#navigator .teller dd {
    padding: 0 140px 0 100px;
    position: relative;
}

#navigator .teller p {
    padding: 0;
    top: 0;
    right: 0;
    position: absolute;
}

#navigator .teller a, #navigator .teller span, #navigator .bubble > p > a {
    text-decoration: none;
}

#navigator .teller p a {
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    font-family: ' CI', Meiryo, " qMmpSPro W3", "Hiragino Kaku Gothic Pro", Osaka, "lr oSVbN", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
    box-sizing: border-box;
    font-size: 22px;
    color: #fff;
    line-height: 30px;
    text-align: center;
    text-decoration: none;
    padding: 25px 20px 20px;
    width: 120px;
    display: block;
    background: #1dbee5;
}

#navigator .teller p a:hover {
    background: rgba(29, 190, 229, 0.8);
}

#navigator .teller_detail dl {
    font-size: 14px;
    line-height: 24px;
    padding: 10px 15px 0;
    position: relative;
}

#navigator .teller_detail dt {
    padding: 10px 0 0;
    position: absolute;
}

#navigator .teller_detail dt img {
    height: auto;
}

#navigator .teller_detail dd {
    padding: 0 0 0 160px;
    position: relative;
}

#navigator .teller_detail dd .status {
    padding: 15px 0 0;
}

#navigator .teller_detail dd .status span {
    display: block;
}

#navigator .teller_detail dd .status p {
    color: #1dbee5;
    padding: 5px 18px 10px;
}

#navigator .teller_detail dd .status ul {
    font-family: ' CI', Meiryo, " qMmpSPro W3", "Hiragino Kaku Gothic Pro", Osaka, "lr oSVbN", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
    font-size: 14px;
    color: #1dbee5;
    line-height: 24px;
    padding: 5px 18px 10px;
}

/*  Message
-----------------------------------------------------------------------------*/
#message {
    margin-bottom: 100px;
}

#message .pageskip {
    text-align: center;
    margin-bottom: 50px;
}
