@charset "UTF-8";

/*  Layout
-----------------------------------------------------------------------------*/
* {
    -webkit-text-size-adjust: 100%;
}

/* Body */
body {
    font-family: ' メイリオ', Meiryo, " ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "MS Pゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
    font-size: 14px;
    color: #333;
    letter-spacing: 0.06em;
    line-height: 22px;
    margin: 0;
    display: block;
}

#top a:hover img, .contents a:hover img, #footer a:hover img {
    opacity: 0.8;
    filter: alpha(opacity=80);
}

/* Header */
#h_wrapper {
    /*padding: 14px 0 27px;*/
}

#header {
    width: 100%;
    height: auto;
    padding: 0;
    margin: 0 auto;
    position: relative;
}

#header > a {
    display: block;
    width: 100%;
    height: auto;
    padding: 10px 0;
    text-decoration: none;
}

#header > a > h1 {
    display: block;
    width: 100%;
    height: auto;
    text-decoration: none;
    text-align: center;
    padding-top: 10px;
    padding-bottom: 9px;
}

#header .tdb-logo-text-title {
    text-align: center;
    text-decoration: none;
    background-size: cover;
    background-position: center center;
    white-space: nowrap;
    display: block;
    color: #000000;
    font-family: 'Noto Serif JP', serif;
    font-size: 39px;
    font-weight: 600;
    text-transform: uppercase;
    padding: 10px;
    margin-bottom: 5px;
}

#header .tdb-logo-text-tagline {
    margin-top: 5px;
    margin-left: 0;
    display: block;
    color: #000000;
    font-family: 'Cormorant Garamond', serif;
    font-size: 18px;
    letter-spacing: 0px;
    line-height: 1;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
    font-weight: 400;
}

#header a:hover .tdb-logo-text-title {
    color: #ff787e;
    -webkit-text-fill-color: initial;
    background: none;
}

#header a:hover .tdb-logo-text-tagline {
    color: #e5e5e5;
    -webkit-text-fill-color: initial;
    background: none;
}

#top_nav {
    display: block;
    width: 100%;
    border-top: solid 1px #e5e5e5;
    border-bottom: solid 1px #e5e5e5;
    padding: 5px 0 0;
    background-color: #f4f4f4;
    margin-bottom: 15px;
}

#top_nav .nav_wrapper {
    display: block;
    width: auto;
    margin: auto;
    height: 100%;
    text-align: center;
    padding: 0;
}

#top_nav .nav_wrapper > ul {
    display: block;
    height: 100%;
    width: auto;
    text-align: center;
    padding: 0;
}

#top_nav .nav_wrapper > ul > li {
    display: inline-block;
    list-style-type: none;
    height: 100%;
    padding: 0;
    margin: 0;
    position: relative;
}

#top_nav .nav_wrapper > ul > li.has-sub {
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    position: relative;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

#top_nav .nav_wrapper > ul > li.has-sub:after {
    content: "\f0d7";
    position: absolute;
    right: 37px;
    top: 18px;
    font-size: 13px;
}

#top_nav .nav_wrapper > ul > li > a {
    font-family: "Noto Serif JP";
    font-size: 15px;
    font-weight: 600;
    vertical-align: middle;
    text-transform: uppercase;
    text-decoration: none;
    display: block;
    height: 100%;
    padding: 0 50px;
    line-height: 48px;
    position: relative;
}

#top_nav .nav_wrapper > ul > li > a:hover {
  color: #000;
}

#top_nav .nav_wrapper > ul > li > a:after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 0;
  height: 1px;
  bottom: 40px;
  background-color: #000000;
  transform: translate3d(0,0,0);
  -webkit-transform: translate3d(0,0,0);
  -webkit-transition: width .2s ease;
  transition: width .2s ease;
}

#top_nav .nav_wrapper > ul > li:hover > a:after,
#top_nav .nav_wrapper > ul > li.active > a:after,
#top_nav .nav_wrapper > ul > li > a.router-link-active:after {
  background-color: #000000;
  height: 1px;
  bottom: 40px;
  width: 30%;
}

#top_nav .nav_wrapper > ul > li > ul.sub-menu {
    display: none;
    min-width: 680px;
    min-height: 430px;
    z-index: 999;
    width: auto;
    height: auto;
    max-width: 670px !important;
    background-color: #f4f4f4;
    top: auto;
    left: 300px;
    float: none;
    position: absolute;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);  
    box-shadow: 0px 2px 6px 0px rgba(0, 0, 0, 0.1);
    border: 1px solid #eaeaea;  
}

#top_nav .nav_wrapper > ul > li:hover > ul.sub-menu {
    display: block;
}

#top_nav .nav_wrapper > ul > li > ul.sub-menu > li {
    height: auto;
    list-style-type: none;
    display: block;
    width: 140px;
    padding-left: 15px!important;
    padding-right: 15px!important;
}

#top_nav .nav_wrapper > ul > li > ul.sub-menu > li:first-child > a {
    padding-top: 40px;
}

#top_nav .nav_wrapper > ul > li > ul.sub-menu > li > a {
    display: block;
    height: auto;
    width: auto;
    padding: 12px 15px 8px;
    text-decoration: none;
    font-weight: bold;
    color: #000;
    border-bottom: solid 1px #f4f4f4;
    font-family: 'Josefin Sans', sans-serif;
    font-size: 14px;
    text-transform: uppercase;
}

#top_nav .nav_wrapper > ul > li > ul.sub-menu > li:hover > a {
    color: #ff787e;
    border-bottom: solid 1px #ff787e;
}

/* Menu Slider */
#top_nav .nav_wrapper > ul > li > ul.sub-menu > li ul.menu-slider {
    display: none;
    position: absolute;
    left: 170px;
    top: 0;
    width: 500px;
    height: auto;
    z-index: 999;
}

#top_nav .nav_wrapper > ul > li > ul.sub-menu > li:first-child > ul.menu-slider,
#top_nav .nav_wrapper > ul > li > ul.sub-menu > li:hover > ul.menu-slider {
    display: block;
}

#top_nav .nav_wrapper > ul > li > ul.sub-menu > li ul.menu-slider > li {
    list-style-type: none;
    display: inline-block;
    float: left;
    height: auto;
    width: 50%;
}

#top_nav .nav_wrapper > ul > li > ul.sub-menu > li ul.menu-slider > li > a {
    display: block;
    width: 100%;
    height: auto;
    text-decoration: none;
    padding-left: 10px;
}

#top_nav .nav_wrapper > ul > li > ul.sub-menu > li ul.menu-slider > li:first-child > a {
    padding-left: 0;
}

#top_nav .nav_wrapper > ul > li > ul.sub-menu > li ul.menu-slider > li > a > img {
    width: 100%;
    height: 300px;
    display: block;
    margin-bottom: 20px;
}

#top_nav .nav_wrapper > ul > li > ul.sub-menu > li ul.menu-slider > li > a > span {
    text-align: left;
    display: block;
    color: #000;
    text-decoration: none;
    font-size: 14px;
    font-family: "Josefin Sans";
    line-height: 1.5;
    padding: 0 10px 5px;
}

#top_nav .nav_wrapper > ul > li > ul.sub-menu > li ul.menu-slider > li > a > span.s-description {
    font-style: italic;
    font-size: 11px;
}

#top_nav .nav_wrapper > ul > li > ul.sub-menu > li ul.menu-slider > li > a:hover > span.s-title {
    color: #ff787e;
}

#top_nav .nav_wrapper > ul > li > ul.sub-menu > li:first-child > a {
    color: #ff787e;
    border-bottom: solid 1px #ff787e;
}

#top_nav .nav_wrapper > ul > li > ul.sub-menu:hover > li:first-child > a {
    color: #000;
    border-bottom: solid 1px #f4f4f4;
}

#top_nav .nav_wrapper > ul > li > ul.sub-menu:hover > li:hover > a:hover {
    color: #ff787e;
    border-bottom: solid 1px #ff787e;
}

#top_nav .nav_wrapper > ul > li > ul.sub-menu:hover > li:first-child > ul.menu-slider {
    display: none;
}

#top_nav .nav_wrapper > ul > li > ul.sub-menu:hover > li:hover > ul.menu-slider {
    display: block;
}




#top_nav .search_form {
    display: block;
    width: 380px;
    right: 0;
    position: absolute;
    box-shadow: 0px 2px 6px 0px rgba(0, 0, 0, 0.2);
    border-color: #4db2ec;
    background-color: #f4f4f4;
    z-index: 9;
    padding: 20px
}

#top_nav .search_form .form_wrap {
    border-bottom: solid 1px #000;
    padding-bottom: 3px;
    display: block;
    width: 100%;
    height: 100%;
}

#top_nav .search_form input:focus,
#top_nav .search_form input {
    background-color: #f4f4f4;
    border: solid 0px #f4f4f4;
    outline: none;
    height: 25px;
    width: 260px;
}

#top_nav .search_form .form_wrap button {
    height: 25px;
    width: 100px;
    display: inline-block;
    float: right;
    cursor: pointer;
    outline: none;
    font-family: "Josefin Sans";
    font-size: 15px;
    font-weight: 600;
}







#top_nav li.search button {
    background-color: #f4f4f4;
    border: solid 1px #f4f4f4;
    border-radius: 0px;
    height: 48px;
}

#top_nav li.search button i {
    color: #000;
    font-size: 18px;
    font-weight: bold;
}



#fixed_header {
    border-top: solid 5px #1dbee5;
    width: 100%;
    z-index: 1000;
    top: 0;
    left: 0;
    display: none;
    background: #fff;
    position: fixed;
}

#fixed_header .gnavi {
    margin: 0 auto;
    width: 970px;
}

#fixed_header .gnavi > li {
    border-left: solid 5px #fff;
    width: 147px;
}

#fixed_header .gnavi > li.btn_account {
    width: 55px;
}

#fixed_header .gnavi > li ul li a {
    padding: 10px 2px;
    width: 141px;
}

#fixed_header .gnavi > li ul li a span {
    letter-spacing: -1px;
}

#fixed_header #fixed_account {
    margin: 0 auto;
    width: 970px;
    position: relative;
}

#fixed_header #fixed_account .loginmenu {
    width: 300px;
    right: 0;
}

/* MyMenu */
#mymenu {
    font-size: 14px;
    text-align: left;
    max-width: 550px;
    min-width: 300px;
    float: right;
    position: relative;
}

#mymenu #loginname span {
    -webkit-border-top-left-radius: 5px;
    -webkit-border-top-right-radius: 5px;
    -moz-border-radius-topleft: 5px;
    -moz-border-radius-topright: 5px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    color: #000;
    text-decoration: none;
    padding: 12px 0 12px 10px;
    display: block;
}

#mymenu #loginname span.over {
    color: #fff;
    background: #000;
}

#mymenu #loginname span strong {
    color: #1dbee5;
    padding: 0 5px;
}

#mymenu #loginname span > a {
    text-decoration: none;
    padding-right: 25px;
    display: inline-block;
    background: url(../../images/mymenu_arr.png) no-repeat right -10px;
}

#mymenu #loginname span > a:hover {
    color: #333;
}

#mymenu #loginname span.over > a {
    color: #fff;
    background: url(../../images/mymenu_arr_over.png) no-repeat right -10px;
}

#mymenu .loginmenu.fixed {
    width: 100%;
    top: 46px;
    position: fixed;
}

#mymenu .login {
    width: 100%;
}

.loginmenu {
    -webkit-box-shadow: 0 5px 15px 0 #ccc;
    box-shadow: 0 5px 15px 0 #ccc;
    box-sizing: border-box;
    padding: 0 15px;
    width: 100%;
    z-index: 1100;
    display: none;
    background: #fff;
    position: absolute;
}

.loginmenu ul {
    padding: 15px 0;
    border-top: dotted 1px #e5e5e5;
}

.loginmenu ul:first-child {
    border-top: none;
}

.loginmenu li {
    padding: 5px 0;
}

.loginmenu li a {
    color: #000;
    text-decoration: none;
    display: block;
}

.loginmenu li a:hover {
    color: #1dbee5;
}

.loginmenu li strong a {
    color: #1dbee5;
    text-decoration: none;
    margin: 0 5px 0 0;
    display: inline;
}

.loginmenu li strong a:hover {
    color: #000;
}

.loginmenu .logout .btn {
    font-size: 14px;
    text-align: center;
    margin: 15px 0 5px 0;
}

.loginmenu .logout .btn a {
    padding: 12px 0;
    display: block;
    cursor: pointer;
    position: relative;
}

.loginmenu .logout .btn a:after {
    content: url(../../images/icon_arr_gray.png);
    position: absolute;
    top: 28%;
    right: 5%;
}

.loginmenu .logout .btn a:hover {
    color: #333;
}

.loginmenu .logout a {
    text-decoration: none;
}

.loginmenu .logout .align_r {
    font-size: 12px;
    padding: 15px 0;
}

.loginmenu .logout .align_r a {
    padding: 2px 0 2px 15px;
    background: url(../../images/icon_arr.png) no-repeat left 5px;
}

/* Footer */
#footer {
    border-top: solid 30px #fff;
    background: url(../../images/footer_contents_bg.gif) left top #dfdfdf;
}

#footer #ptop_2,
#footer #ptop {
    text-align: center;
    height: 37px;
    background: url(../../images/ptop_bg.gif) repeat-x left top #f6f6f6;
}

#footer #footer_banner {
    background-color: #f6f6f6;
    /*background: url(../../images/footer_banner_bg.gif) repeat-x left bottom #f6f6f6;*/
}

/*#footer #footer_banner div*/
#footer #footer_banner #footer_ac {
    margin: 0 auto;
    width: 86%;
}

#footer #footer_banner div:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#footer #footer_banner #footer_ac {
    padding: 30px 0 50px;
    /*background: url(../../images/footer_ac_bg.jpg) no-repeat 0 30px;*/
}

#footer #footer_banner #footer_ac .ac_head {
    position: relative;
}

#footer #footer_banner #footer_ac .ac_head .catch {
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "Hiragino Mincho Pro W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-size: 22px;
    font-weight: normal;
    padding: 8px 0;
}

#footer #footer_banner #footer_ac .ac_head > img {
    top: 80px;
    left: 20px;
    position: absolute;
}

#footer #footer_banner #footer_ac .ac_head dl {
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "Hiragino Mincho Pro W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    padding: 50px 0 0 420px;
    height: 128px;
    position: relative;
}

#footer #footer_banner #footer_ac .ac_head dt {
    font-size: 18px;
    padding: 12px 0 0;
    position: absolute;
}

#footer #footer_banner #footer_ac .ac_head dt:nth-of-type(1) {
    letter-spacing: -0.1em;
}

#footer #footer_banner #footer_ac .ac_head dt span {
    font-size: 12px;
    font-weight: normal;
    line-height: 18px;
    display: block;
}

#footer #footer_banner #footer_ac .ac_head dd {
    padding: 0 0 5px 100px;
}

#footer #footer_banner #footer_ac .ac_head dd:nth-of-type(2) {
    padding-top: 5px;
}

#footer #footer_banner #footer_ac .ac_more, #footer #footer_banner #footer_ac .ac_close {
    text-align: center;
    clear: both;
}

#footer #footer_banner #footer_ac .ac_close {
    padding: 30px 0 0;
}

#footer #footer_banner #footer_ac .ac_more a, #footer #footer_banner #footer_ac .ac_close a {
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "Hiragino Mincho Pro W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    box-sizing: border-box;
    font-size: 16px;
    color: #999;
    text-decoration: none;
    padding: 5px 0 0;
    border: 1px solid #ccc;
    width: 200px;
    height: 34px;
    display: inline-block;
    background: #fff;
}

#footer #footer_banner #footer_ac .ac_close a {
    border-bottom: none;
}

#footer #footer_banner #footer_ac .ac_more a:hover, #footer #footer_banner #footer_ac .ac_close a:hover {
    background: #fafafa;
}

#footer #footer_banner #footer_ac .ac_more a:after {
    font: normal normal normal 16px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    padding: 0 0 0 10px;
    display: inline-block;
    content: "\f067";
}

#footer #footer_banner #footer_ac .ac_more.open a:after, #footer #footer_banner #footer_ac .ac_close a:after {
    font: normal normal normal 16px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    padding: 0 0 0 10px;
    display: inline-block;
    content: "\f068";
}

#footer #footer_banner #footer_ac .ac_body {
    box-sizing: border-box;
    padding: 40px 0 0;
    border: 1px solid #ccc;
    border-top: none;
    display: none;
    background: #fff;
}

#footer #footer_banner #footer_ac .ac_body div {
    margin: 0 auto;
    width: 900px;
    overflow: hidden;
}

#footer #footer_banner #footer_ac .ac_body dl {
    padding: 0 25px;
    width: 250px;
    float: left;
}

#footer #footer_banner #footer_ac .ac_body div:nth-of-type(2) dl {
    box-sizing: border-box;
    width: 100%;
    clear: both;
    float: none;
}

#footer #footer_banner #footer_ac .ac_body dt {
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "Hiragino Mincho Pro W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-size: 16px;
    font-weight: normal;
    color: #1dbee5;
    margin: 10px;
    padding: 0 10px;
    border-left: 2px solid #1dbee5;
    position: relative;
}

#footer #footer_banner #footer_ac .ac_body dt span {
    font-family: ' メイリオ', Meiryo, " ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "MS Pゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
    font-size: 12px;
    font-weight: normal;
    color: #999;
    right: 0;
    position: absolute;
}

#footer #footer_banner #footer_ac .ac_body dd {
    letter-spacing: 0;
    padding: 5px 5px 30px;
    border-top: 1px solid #999;
}

#footer #footer_banner #footer_ac .ac_body div:nth-of-type(2) dd {
    padding: 5px 5px 15px;
}

#footer #footer_banner #footer_ac .ac_body dd p {
    padding: 15px 0 0;
}

#footer #footer_banner #footer_ac .ac_body .indent {
    text-indent: -1em;
    padding-left: 1em;
}

#footer #footer_banner #footer_ac .ac_body .entry_step {
    padding: 30px 0 0;
    width: 100%;
    background: url(../../images/footer_ac_step_bg.gif) no-repeat 125px 30px;
    overflow: hidden;
}

#footer #footer_banner #footer_ac .ac_body .entry_step li {
    padding: 50px 0 0;
    float: left;
}

#footer #footer_banner #footer_ac .ac_body .entry_step li:nth-of-type(2), #footer #footer_banner #footer_ac .ac_body .entry_step li:nth-of-type(3) {
    padding: 0;
}

#footer #footer_banner #footer_ac .ac_body .entry_step li p {
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    box-sizing: border-box;
    margin: 0 0 15px 27px;
    padding: 15px 10px;
    width: 120px;
    height: 100px;
    background: #f6f6f6;
}

#footer #footer_banner #footer_ac .ac_body .entry_step li:nth-of-type(2) p:nth-of-type(2) {
    padding-top: 28px;
}

#footer #footer_banner #footer_ac .ac_body .entry_step li:nth-of-type(2) p {
    margin: 0 0 15px 10px;
}

#footer #footer_banner #footer_ac .ac_body .entry_step .icon {
    text-align: center;
    padding: 0;
}

#footer #footer_banner #footer_ac .ac_body .entry_step .icon p {
    margin: 0;
    padding: 0;
    height: auto;
    background: none;
}

#footer #footer_banner #footer_ac .ac_body .entry_step .icon span {
    font-weight: bold;
    text-align: center;
    margin: 0 0 10px;
    display: block;
}

#footer #footer_banner #footer_ac .ac_body .note {
    font-size: 11px;
    color: #999;
    letter-spacing: 0;
    margin: 0 auto;
    width: 840px;
}

#footer #footer_contents {
    margin: 0 auto;
    width: 970px;
    position: relative;
}

#footer #footer_contents #f_logo {
    top: 110px;
    position: absolute;
}

#footer #footer_contents #f_box {
    font-size: 12px;
    color: #666;
    line-height: 20px;
    padding: 0 0 0 210px;
}

#footer #footer_contents div {
    padding: 25px 0 0;
    width: 760px;
}

#footer #footer_contents div:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

#footer #footer_contents div p {
    font-size: 14px;
    padding: 10px 0 20px;
}

#footer #footer_contents div #pmark {
    width: 290px;
    float: left;
    position: relative;
}

#footer #footer_contents div #pmark dt {
    top: 0;
    left: 0;
    position: absolute;
}

#footer #footer_contents div #pmark dd {
    font-size: 10px;
    line-height: 16px;
    padding: 5px 0 0 100px;
}

#footer #footer_contents div #pinkribbon {
    margin: 0 0 0 35px;
    width: 260px;
    float: left;
    position: relative;
}

#footer #footer_contents div #pinkribbon dt {
    top: 10px;
    left: 0;
    position: absolute;
}

#footer #footer_contents div #pinkribbon dd {
    font-size: 10px;
    line-height: 16px;
    padding: 5px 0 0 55px;
}

#footer #footer_contents div #ssl {
    text-align: right;
    width: 140px;
    float: right;
}

#footer #footer_contents div #ssl dd {
    padding: 15px 0 0;
}

#footer #footer_contents div #ssl dd a {
    font-weight: bold;
    color: #000;
    text-decoration: none;
}

#footer #footer_contents div #ssl {
    text-align: right;
    width: auto;
    float: right;
    padding: 0;
}

#footer #footer_contents div #ssl,
#footer #footer_contents div #ssl div {
    width: 120px;
}

#footer #footer_contents div #ssl div {
    padding: 0;
}

#footer #footer_contents div #ssl #DigiCertClickID_pha-TLjmSeal {
    margin-bottom: 5px !important;
}

#footer #footer_contents div #ssl #DigiCertClickID_pha-TLjm a {
    color: #666 !important;
}

#footer #footer_contents div #ssl dd {
    padding: 15px 0 0;
}

#footer #footer_contents div #ssl dd a {
    font-weight: bold;
    color: #000;
    text-decoration: none;
}


#footer #f_navi {
    width: 760px;
    clear: both;
}

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

#footer #f_navi li {
    padding: 0 0 0 15px;
    float: left;
}

#footer #f_navi li:first-child {
    padding: 0;
}

#footer #copyright {
    letter-spacing: 0.02em;
    padding: 45px 0 20px;
}

#footer #copyright dt {
    padding-bottom: 5px;
}

#footer #copyright dt a {
    color: #666;
    text-decoration: none;
}

#footer #copyright dt a:hover {
    color: #999;
}

#footer #copyright dd span {
    font-size: 10px;
    padding: 0 0 0 15px;
}

/* pc_to_sp */
#pc_to_sp {
    display: none;
}

#pc_to_sp a {
    font-size: 48px;
    font-weight: bold;
    color: #fff;
    text-align: center;
    text-decoration: none;
    padding: 40px 0;
    display: block;
    background: #ff4075;
}

/* Ribon */
.r_wrapper {
    background: url(../../images/ribon_bg.gif) repeat-x left top #fce9f1;
    clear: both;
}

.ribon {
    margin: 0 auto;
    width: 970px;
}

/* status_guide */
.status_guide {
    width: 640px;
    height: 585px;
}

.status_guide .status_catch {
    text-align: center;
    padding: 20px 0;
}

.status_guide .status_catch dt {
    font-size: 20px;
    font-weight: bold;
    padding: 5px 0 5px 30px;
    display: inline-block;
    background: url(../../images/status_beginner.png) no-repeat left top;
}

.status_guide .status_catch dd {
    letter-spacing: 0;
    padding: 10px 0 0;
}

.status_guide .status_catch p {
    padding: 0 0 10px;
}

.status_guide .status_catch span {
    color: #ff4075;
}

.status_guide table {
    box-sizing: border-box;
    margin: 10px 0 0;
    border-collapse: collapse;
    width: 100%;
}

.status_guide table th, .status_guide table td {
    padding: 16px;
    border: 1px solid #ccc;
}

.status_guide table th {
    color: #fff;
    width: 20px;
    background: #ff79ae;
}

.status_guide table dl {
    position: relative;
}

.status_guide table dt {
    position: absolute;
}

.status_guide table dt p {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    font-size: 12px;
    text-align: center;
    margin: 7px 0 0;
    padding: 3px 0;
    width: 135px;
}

.status_guide table dd {
    padding: 0 0 0 160px;
}

.status_guide table dd strong {
    color: #ff4075;
}

.status_guide table dd span {
    font-weight: bold;
    color: #0088ce;
}

.status_guide table.discon th {
    background: #666;
}

.status_guide table.discon strong {
    color: #000;
}

/*  Second Page
-----------------------------------------------------------------------------*/
#pnkz {
    font-size: 12px;
    letter-spacing: 0.03em;
    line-height: 20px;
    margin: 0 auto;
    padding: 0 0 30px;
    width: 970px;
}

#pnkz a {
    text-decoration: none;
}

#pnkz a:hover {
    text-decoration: underline;
}

/* Contents */
.contents {
    margin: 0 auto;
    width: 100%;
    /*width: 970px;*/
}

.contents .sub_header {
    display: block;
    width: 970px;
    height: auto;
    margin: auto;
}

.contents:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

.contents_wide {
    margin: 0 auto;
    width: 100%;
    max-width: 1440px;
    min-width: 970px;
}

.c_wrapper {
    padding: 40px 0 0;
}

.c_wrapper:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

.contents_l {
    width: 730px;
    float: left;
}

.contents_r {
    width: 730px;
    float: right;
}

/* Title */
.f_catch {
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "Hiragino Mincho Pro W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.title {
    font-family: 'Times New Roman';
    font-size: 24px;
    font-weight: normal;
    color: #ccc;
    text-align: center;
}

.title a {
    color: #ccc;
    text-decoration: none;
}

.title a:hover {
    opacity: 0.7;
    filter: alpha(opacity=70);
}

.title span {
    font-family: ' メイリオ', Meiryo, " ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "MS Pゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
    font-size: 26px;
    color: #333;
    letter-spacing: 0.06em;
    line-height: 22px;
    display: block;
    margin-top: 22px;
}

.stitle {
    font-size: 20px;
    color: #1dbee5;
}

h4.stitle {
    font-size: 18px;
    font-weight: normal;
    color: #333;
    margin: 25px 0 0;
    padding: 0 0 0 12px;
    border-left: solid 8px #1dbee5;
    line-height: 28px;
}

.stitle02 {
    font-size: 18px;
    font-weight: normal;
    color: #1dbee5;
    padding: 15px 20px;
    border-left: solid 3px #1bbee5;
    background: #F2F2F2;
}

.sstitle {
    -webkit-border-radius: 10px;
    border-radius: 10px;
    font-weight: bold;
    padding: 5px 10px;
    background: #f2f2f2;
}

/* submenu */
.submenu {
    margin-bottom: 40px;
    display: flex;
    justify-content: space-between;
}

.submenu a {
    box-sizing: border-box;
    width: 188px;
    display: inline-block;
    color: #666;
    font-weight: bold;
    text-decoration: none;
    border: 2px solid #e2e2e2;
    padding: 12px;
    text-align: center;
    background: #f3f3f3;
    position: relative;
}

.submenu li.current a {
    color: #1dbee5;
    background: #fff;
    border-color: #1dbee5;
}

.submenu a:after {
    content: "";
    width: 0;
    height: 0;
    border: 9px solid transparent;
    border-top: 10px solid #e2e2e2;
    position: absolute;
    top: 48px;
    left: 45%;
}

.submenu a:hover {
    border-color: #1dbee5;
}

.submenu li.current a:after,
.submenu a:hover:after {
    border-top: 10px solid #1dbee5;
}

.submenu.under a:after {
    border-top: none;
    border-bottom: 10px solid #e2e2e2;
    top: -12px;
}

.submenu.under li.current a:after,
.submenu.under a:hover:after {
    border-top: none;
    border-bottom: 10px solid #1dbee5;
}

/*個人プロフ nav*/
.submenu.sub_prof {
    margin-bottom: 10px;
}

.submenu.sub_prof a {
    width: 236px;
}


/*  side  */
#side_r {
    width: 210px;
    float: right;
}

#side_l {
    width: 200px;
    float: left;
}

#side_r .nav {
    border-top: dotted 1px #CDCCCC;
}

#side_r .nav li {
    font-size: 12px;
    line-height: 18px;
    position: relative;
}

#side_r .nav > li {
    border-bottom: dotted 1px #CDCCCC;
}

#side_r .nav > li a {
    text-decoration: none;
    padding: 15px 0 15px 30px;
    display: block;
}

#side_r .nav li ul {
    padding: 0 0 5px;
    display: none;
}

#side_r .nav li li a {
    text-decoration: none;
    padding: 0px 0 10px 50px;
    display: block;
}

#side_r .nav > 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);
    font-size: inherit;
    top: 17px;
    left: 12px;
    display: none;
    content: "\f04b";
    position: absolute;
}

#side_r .nav li 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);
    font-size: inherit;
    top: 2px;
    left: 32px;
    display: none;
    content: "\f04b";
    position: absolute;
}

#side_r .nav li a:hover:before {
    display: inline-block;
}

#side_r .nav li .hover:before {
    color: #1dbee5;
    display: inline-block;
}

#side_r .nav li a:hover, #side_r .nav li .hover {
    font-weight: bold;
}

.drop_nav {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    margin: 0 0 10px;
    border: solid 1px #ccc;
}

.drop_nav dt a {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    word-break: break-word;
    font-weight: bold;
    color: #333;
    text-decoration: none;
    padding: 10px 30px 10px 20px;
    display: block;
    background: #fff;
    position: relative;
}

.drop_nav dt a: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: 20px;
    color: #ccc;
    top: 10px;
    right: 10px;
    display: block;
    content: "\f078";
    position: absolute;
}

.drop_nav.open dt a: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: 20px;
    color: #333;
    top: 10px;
    right: 10px;
    display: block;
    content: "\f077";
    position: absolute;
}

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

.drop_nav dd li {
    padding: 2px 0;
}

.drop_nav dd li a {
    font-size: 12px;
    text-decoration: none;
    padding: 0 0 0 13px;
    display: block;
    position: relative;
}

.drop_nav dd li a:hover:before, .drop_nav dd 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_tel {
    padding: 25px 20px 20px 5px;
    border-bottom: solid 1px #ccc;
    border-right: solid 1px #ccc;
    background: url(../../images/side_q.gif) no-repeat 3px 12px;
}

#side_tel p {
    font-size: 12px;
    padding: 0 0 15px;
}

#side_tel p span {
    font-size: 14px;
    font-weight: bold;
    padding: 0 0 25px 80px;
    display: block;
}

/**/
.pageft_nav {
    display: none;
}

.pageft p {
    padding-top: 8px;
    font-weight: bold;
}


/* Tel box */
.telbox {
    padding: 20px 10px 0;
}

.telbox a {
    color: #666;
    text-decoration: none;
    cursor: text;
}

.telbox .freetel {
    font-family: Arial;
    font-size: 40px;
    font-weight: bold;
    line-height: 46px;
    padding: 0 0 0 50px;
    display: inline-block;
    background: url(../../images/icon_freetel01.gif) no-repeat left center;
}

.telbox .day {
    font-size: 17px;
    color: #1dbee5;
    vertical-align: top;
    padding: 12px 0 0 15px;
    display: inline-block;
}

.telbox .other {
    padding: 5px 0 0;
}

.telbox .other span {
    font-family: Arial;
    font-size: 24px;
    font-weight: bold;
    line-height: 28px;
    margin: 0 0 0 10px;
}

/* Button */
.btn {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    color: #333;
    text-decoration: none;
    border: solid 2px #1dbee5;
    background: #fff;
}

.btn:hover {
    background: #f8f8f8;
}

.btn01, .btn01:visited {
    -webkit-border-radius: 10px;
    border-radius: 10px;
    font-weight: bold;
    color: #fff;
    text-decoration: none;
    padding: 5px 25px 5px 10px;
    display: inline-block;
    background: #10c5f5;
    position: relative;
}

.btn01: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: #fff;
    top: 8px;
    right: 10px;
    content: "\f0da";
    position: absolute;
}

.btn01:hover {
    color: #fff;
    background: rgba(16, 197, 245, 0.7);
}

.btn_cancel, .btn_cancel:visited {
    color: #d00000;
    text-decoration: none;
    border: solid 1px #f63b3b;
    background: url(../../images/btn_cancel_bg.gif) repeat-x left top #fefefe;
}

.btn_cancel:hover {
    background: #fff;
}

/* btn_gray > */
.btn02 {
    box-sizing: border-box;
    color: #666;
    width: 270px;
    background: #fff;
    padding: 15px 10px;
    border-radius: 8px;
    text-decoration: none;
    border: 2px solid #ccc;
    text-align: center;
    display: inline-block;
    position: relative;
}

.btn02:after,
.btn03:after {
    content: url(../../images/icon_arr_gray.png);
    position: absolute;
    top: 30%;
    right: 5%;
}

.btn02:hover {
    background: #f2f2f2;
    color: #333;
}

/* btn_blue > */
.btn03 {
    box-sizing: border-box;
    color: #333;
    width: 270px;
    background: #fff;
    padding: 15px 10px;
    border-radius: 8px;
    text-decoration: none;
    border: 2px solid #1dbee5;
    text-align: center;
    display: inline-block;
    position: relative;
}

.btn03:hover {
    background: #f8f8f8;
    color: #333;
}

.btn_center {
    text-align: center;
    margin-top: 30px;
}


/* fortunetellers prof */
.status_online,
.status_working,
.status_offline,
.status_close,
.status_event {
    box-sizing: border-box;
    font-size: 12px;
    font-weight: bold;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    text-align: center;
    line-height: 1.25;
    padding: 16px 0;
}

.prof_thumb {
    text-decoration: none;
    margin: 0 auto;
    width: 135px;
    display: block;
}

.prof_thumb:hover strong {
    text-decoration: underline;
}

.prof_thumb:hover span {
    color: #000;
}

.prof_thumb .name {
    line-height: 18px;
    text-align: left;
    margin: 0;
    padding: 7px 0 0;
    display: inline-block;
}

.prof_thumb strong {
    font-size: 14px;
}

.status_online, .prof_thumb .status_online {
    color: #333;
    background: #abe203;
}

.status_working, .prof_thumb .status_working {
    color: #fff;
    background: #ec3950;
}

.status_offline, .prof_thumb .status_offline {
    color: #333;
    background: #58c7e2;
    padding: 10px;
}

.status_offline span, .prof_thumb .status_offline span {
    color: #fff;
    background: none;
    padding: 0;
}

.status_close, .prof_thumb .status_close {
    color: #666;
    background: #f2f2f2;
}

.status_event, .prof_thumb .status_event {
    color: #fff;
    background: #ff7d26;
}

.prof_thumb p.status_event {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    font-size: 11px;
    text-align: center;
    margin: 5px 0 0;
    padding: 3px 5px 1px 5px;
}


.prof_thumb span {
    font-size: 12px;
    padding: 10px 0 0 25px;
    display: block;
}

.prof_thumb span.item_time {
    background: url(../../images/icon_clock.png) no-repeat 0 12px;
}

.prof_thumb .photo {
    padding: 0;
    background: none;
    position: relative;
}

.list_fortune .methods {
    margin: auto;
    width: 195px;
    height: 90px;
    display: block;
    border: 1px solid #d9d9d9;
    padding: 6px 10px;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    overflow: hidden;
    word-wrap: break-word;
    font-size: 12px;
    letter-spacing: 0;
    line-height: 1.5;
}

.list_fortune .methods .method_item {
    padding: 0;
    margin: 0;
}

.list_fortune .methods a {
    text-decoration: none;
    font-size: 12px;
    font-style: normal;
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    margin: 0;
    padding: 0;
    letter-spacing: 0;
    line-height: 1.5;
}

.new_message .prof_thumb .photo::after {
    vertical-align: middle;
    bottom: -5px;
    right: 5px;
    display: inline-block;
    content: url(../../images/icon_message.png);
    position: absolute;
}


.prof_thumb .photo i {
    font-family: 'Times New Roman', 'Times Roman';
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    font-style: normal;
    font-weight: bold;
    color: #fff;
    line-height: 18px;
    padding: 0 10px;
    left: 5px;
    bottom: 5px;
    background: #1dbee5;
    position: absolute;
}

.prof_thumb .subtext {
    font-size: 10px;
    color: #999;
    line-height: 14px;
    padding: 8px 0 0;
    background: none;
}

.prof_thumb .subtext.yomi {
    padding: 0;
    display: block;
    color: #000;
}

.prof_thumb .comment {
    font-size: 13px;
    line-height: 1.4;
    padding-top: 8px;
}

.prof_thumb:hover .subtext {
    color: #999;
}

.prof_thumb:hover .comment {
    color: #000;
}

.prof_thumb .minutes, .prof_thumb:hover .minutes {
    color: #1dbee5;
}

/* faq_box */
.faq_box {
    box-sizing: border-box;
    margin: 0 auto;
    padding: 0 0 100px;
    width: 100%;
}

.faq_box dt {
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "Hiragino Mincho Pro W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-size: 20px;
    font-weight: normal;
    color: #ff4075;
    line-height: 22px;
    margin: 10px 0 0;
    padding: 14px 0 16px 50px;
    border: solid 1px #ccc;
    background: url(../../images/question.gif) no-repeat 15px 10px;
    cursor: pointer;
    position: relative;
}

.faq_box dt.align_c {
    text-align: center;
    padding: 0;
    background: none;
}

.faq_box dt.align_c span {
    padding: 14px 0 16px 50px;
    display: inline-block;
    background: url(../../images/question.gif) no-repeat 15px 10px;
}

.faq_box dt:after {
    font: normal normal normal 20px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    color: #D3D3D3;
    top: 16px;
    right: 18px;
    display: inline-block;
    content: "\f067";
    position: absolute;
}

.faq_box .open:after {
    font: normal normal normal 20px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
    color: #D3D3D3;
    top: 16px;
    right: 18px;
    display: inline-block;
    content: "\f068";
    position: absolute;
}

.faq_box dd {
    font-size: 16px;
    line-height: 28px;
    padding: 30px;
    border: 1px solid #CCCCCC;
    border-top: none;
    display: none;
}

.faq_box dd p {
    padding: 25px 0 0;
}

.faq_box .ans {
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "Hiragino Mincho Pro W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-size: 20px;
    font-weight: normal;
    line-height: 30px;
    padding: 5px 0 0 40px;
    display: block;
    position: relative;
}

.faq_box .ans:before {
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "Hiragino Mincho Pro W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-size: 36px;
    color: #3cf;
    line-height: 40px;
    top: 0;
    left: 0;
    display: inline-block;
    content: "A";
    position: absolute;
}

/* pagenation */
.pagenation {
    text-align: center;
    padding: 50px 0;
    clear: both;
}

.pagenation li {
    display: inline-block;
}

.pagenation li a, .pagenation li span {
    font-size: 18px;
    color: #fff;
    line-height: 24px;
    text-decoration: none;
    margin: 0 5px;
    padding: 5px 12px;
    display: block;
    background: #c6c6c6;
}

.pagenation li a:hover {
    background: #e0e0e0;
}

.pagenation li span {
    background: #1dbee5;
}

/* sidebanner */
#side_banner {
    padding: 20px 0 0;
}

#side_banner li {
    text-align: center;
    padding: 20px 0 0;
}

#side_banner li img {
    width: 210px;
    height: auto;
}

/* share */
.share_area {
    text-align: center;
    margin: 0 0 50px;
}

.share_area p {
    font-size: 26px;
    line-height: 30px;
    vertical-align: 8px;
    padding: 0 10px 0 0;
    display: inline-block;
}

.share_area ul {
    display: inline-block;
}

.share_area li {
    padding: 0 2px;
    display: inline-block;
}

.share_area a {
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    color: #fff;
    text-decoration: none;
    width: 35px;
    height: 35px;
    display: block;
    position: relative;
}

.share_area i {
    font-size: 20px;
    top: 9px;
    left: 7px;
    position: absolute;
}

.share_area .facebook {
    background: #4963a4;
}

.share_area .twitter {
    background: #00b5f0;
}

.share_area .twitter i {
    left: 4px;
}

.share_area .line {
    display: none;
}

.share_area span {
    font-size: 10px;
    color: #999;
    display: block;
}

/* message */

.message_list .image img {
    width: 64px;
}

.message_list dt a {
    text-decoration: none;
}

.message_list dt {
    font-size: 14px;
    font-weight: bold;
    margin-top: 10px;
}

.message_list dt span {
    font-size: 12px;
    padding-left: 5px;
}

.message_list dt .update {
    font-size: 10px;
    font-weight: normal;
    line-height: 12px;
    padding-left: 15px;
    background: url(../../images/icon_clock02.png) 0 0 no-repeat;
    margin-top: 5px;
}

.message_list dd {
    font-size: 13px;
    line-height: 20px;
    margin-top: 15px;
}

.message_list {
    font-size: 0;
    border-left: 1px solid #ccc;
}

.message_list .box:first-child,
.message_list .box:nth-child(2),
.message_list .box:nth-child(3) {
    border-top: 1px solid #ccc;
}

.message_list .image {
    float: left;
}

.message_list dl {
    margin-left: 20px;
    width: 200px;
    float: left;
}

.message_list .box {
    box-sizing: border-box;
    vertical-align: top;
    padding: 10px 0 20px 10px;
    border-bottom: 1px solid #ccc;
    border-right: 1px solid #ccc;
    width: 322px;
    display: inline-block;
}

.message_list .box:nth-child(3n) {
    width: 323px;
}

/*Footer*/
@keyframes linelink {
    0% {
        background-size: 100% 1px;
        background-position: 100% 100%
    }
    50% {
        background-size: 0 1px;
        background-position: 100% 100%
    }
    51% {
        background-size: 0 1px;
        background-position: 0 100%
    }
    to {
        background-size: 100% 1px;
        background-position: 0 100%
    }
}

#footer #footer_banner #footer_ac {
    height: auto;
}

#footer #footer_banner #footer_ac > .slick-slider .slick-slide > div {
    display: block;
    width: auto;
    padding: 0 15px;
}

#footer #footer_banner #footer_ac > .slick-slider .slide a {
    display: block;
    width: 100%;
    height: 100%;
    padding-top: 5px;
    text-decoration: none;
}

#footer #footer_banner #footer_ac > .slick-slider .slide a .img {
    padding: 45px 0;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    border-radius: 5px;
    background: #fff;
    box-shadow: 0 0.1rem 0.5rem 0 rgba(0,0,0,.1);
    margin-bottom: 20px;
}

#footer #footer_banner #footer_ac > .slick-slider .slide a:hover .img {
    box-shadow: 0 0.5rem 2rem 0 rgba(0,0,0,.15);
}

#footer #footer_banner #footer_ac > .slick-slider .slide a .img img {
    margin: auto;
}

#footer #footer_banner #footer_ac > .slick-slider .slide a .info {
    display: block;
    width: 100%;
    font-size: 12px;
}

#footer #footer_banner #footer_ac > .slick-slider .slide a .info .title {
    text-decoration: none!important;
    text-align: left;
    color: #000;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 16px;
    padding-bottom: 4px;
    line-height: 30px;
    background: linear-gradient(#333,#333) 100% 100%/100% 1px no-repeat;
}

#footer #footer_banner #footer_ac > .slick-slider .slide a:hover .info .title {
    animation: linelink .8s cubic-bezier(.23,1,.32,1) 0s;
}

#footer #footer_banner #footer_ac > .slick-slider .slide a .info .short_desc {
    display: block;
    margin-top: 8px;
    color: #999;
    font-size: 16px;
}

#footer #footer_banner #footer_ac .slide_header {
    padding: 20px 15px;
}

#footer #footer_banner #footer_ac .slide_header .slider_h h2 {
    font-weight: 700;
    position: relative;
    line-height: 1.4;
    font-size: 28px;
    padding-left: 90px;
}

#footer #footer_banner #footer_ac .slide_header .slider_h h2:before {
    display: block;
    position: absolute;
    content: "";
    left: 0;
    top: 4px;
    width: 35px;
    height: 35px;
    background: url(../../images/pencil.svg) 50% no-repeat;
    background-size: 35px 35px;
}

#footer #footer_banner #footer_ac .slide_header .slider_h h2:after {
    display: block;
    position: absolute;
    content: "";
    width: 1px;
    height: 100%;
    background: #e6e6e6;
    top: 0;
    left: 62px;
    box-sizing: border-box;
}

#footer #footer_banner #footer_ac .slide_header {
    border-bottom: 1px solid #e6e6e6;
    padding-bottom: 35px;
    margin-bottom: 20px;
}

#footer #footer_banner #footer_ac .slide_header .slider_h {
    display: inline-block;
    width: 50%;
    float: left;
}

#footer #footer_banner #footer_ac .slide_header .slider_h_right {
    float: right;
    width: auto;
}

#footer #footer_banner #footer_ac .slide_header .slider_h_right ul {
    display: block;
    height: auto;
    width: auto;
}

#footer #footer_banner #footer_ac .slide_header .slider_h_right ul li {
    list-style-type: none;
    display: inline-block;
}

#footer #footer_banner #footer_ac .slide_header .slider_h_right ul li a {
    text-decoration: none;
    background: #fff;
    box-shadow: 0 0.1rem 0.1rem 0 rgba(0,0,0,.1);
    display: block;
    border-radius: 5px;
    padding: 5px 10px;
    font-size: 13px;
    color: #fe4521;
    border: 1px solid #fe4521;
}

#footer #footer_banner #footer_ac .slide_header .slider_h_right ul li a:hover {
    box-shadow: 0 0.3rem 0.5rem 0 rgba(0,0,0,.15);
}


#footer .f_copyright {
    display: block;
    background-color: #fff;
    padding: 20px 0 30px;
}

#footer .f_copyright .f_copyright_w {
    margin: 0 auto;
    width: 970px;
    height: auto;
    position: relative;
}

#footer .f_copyright .f_copyright_w ul.f_nav {
    display: block;
    width: 100%;
    height: auto;
    padding: 20px 0;
}

#footer .f_copyright .f_copyright_w ul.f_nav li {
    list-style-type: none;
    display: inline-block;
    float: left;
    padding: 0 5px;
    border-right: 1px solid #a0a2a8;
    line-height: 1;
}

#footer .f_copyright .f_copyright_w ul.f_nav li:first-child {
    padding-left: 0;
}

#footer .f_copyright .f_copyright_w ul.f_nav li:last-child {
    border-right: 0px solid #a0a2a8;
}

#footer .f_copyright .f_copyright_w ul.f_nav li a {
    text-decoration: none;
    font-size: 11px;
    color: #0e1618;
    transition: 0.3s ease-out opacity;
    outline: none;
}

#footer .f_copyright .f_copyright_w ul.f_nav li a:hover {
    opacity: 0.7;
}

#footer .f_copyright .f_copyright_w .company {
    border-top: 1px solid #e6e6e5;
    display: block;
    width: 100%;
    height: 15px;
    padding-top: 7px;
    margin-top: 14px;
}

#footer .f_copyright .f_copyright_w .company p {
    display: inline-block;
    width: auto;
    float: left;
    color: #0e1618;
    line-height: 1.68;
    letter-spacing: 1px;
    font-size: 10px;
    text-transform: uppercase;
    padding-top: 7px;
    font-weight: normal;
    font-family: YakuHanJP, Barlow, "Noto Sans JP", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", メイリオ, sans-serif;
}


#footer .f_copyright .f_copyright_w .company ul {
    display: inline-block;
    float: right;
    width: auto;
}

#footer .f_copyright .f_copyright_w .company ul li {
    list-style-type: none;
    display: inline-block;
}

#footer .f_copyright .f_copyright_w .company ul li a {
    padding-right: 5px;
    text-decoration: none;
    color: #0e1618;
    line-height: 1.68;
    letter-spacing: 1px;
    font-size: 10px;
    font-weight: normal;
    font-family: YakuHanJP, Barlow, "Noto Sans JP", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", メイリオ, sans-serif;
}

#footer .f_copyright .f_copyright_w .company ul li a:hover {
    opacity: 0.7;
}

#footer .f_copyright .f_copyright_w .company ul li:after {
    content: '/';
    font-size: 10px;
}

#footer .f_copyright .f_copyright_w .company ul li:last-child:after {
    content: '';
}

