@charset "UTF-8";

/*
 common ---------------------------------------------- */
/* clearfix */
.cf:before,
.cf:after {
    content:"";
    display:table;
}
.cf:after {
    clear:both;
}
.cf {
    zoom:1;
}
.col-xs-1, .col-xs-10, .col-xs-11, .col-xs-12, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9 {
    float: none;
    width: 100% !important;
}
/* font */
p {
    color: #666;
    line-height: 1.8em;
}
/* link */
a, a:hover {
    color: #076a75;
}
/* title */
h2 {
    border-bottom: 2px solid #076a75;
    padding-bottom: 0.3em;
    margin-bottom: 1em;
    font-weight: normal;
    line-height: 1.8em;
}
h3 {
    font-size: 18px;
    background-color: #efefef;
    padding: 1em;
    border-radius: 10px;
    border-bottom: none;
    margin: 58px 0 24px;
    font-weight: normal;
    line-height: 1.8em;
}
h4 {
    font-size: 18px;
    font-weight: normal;
    border-bottom: 1px solid #666;
    padding-left: 0.3em;
    padding-bottom: 0.2em;
    padding-top: 0.2em;
    line-height: 1.8em;
}
.header_title_wrap {
    text-align: center;
    padding: 4em 0;
}
/* width */
.w97 {
    width: 97%;
    margin: 0 auto;
}
.margin-b-100 {
    margin-bottom: 100px !important;
}
/* header */
header.header {
    display: flex;
    position: fixed;
    height: 100px;
    background: #fff;
    width: 100%;
    z-index: 9999;
    box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.03), 0px 4px 4px 0px rgba(0, 0, 0, 0.03);
}
.bg-color-sky-light .content-md {
    padding-top: 180px;
}
.ps_policy .bg-color-sky-light .content-md {
    padding-top: 165px;
}
/* nav */
.navbar {
    min-height: 100px;
    margin: 0 auto;
}
/* sub page title */
.header_title p, .header_title h2 {
    color: #2095A3;
    font-weight: normal;
    letter-spacing: 3px;
    margin-bottom: 0;
}
.header_title h2 {
    font-size: 28px;
    margin: 0;
    border: none;
}
.header_title p {
    font-size: 18px;
}
.htw_wrap {
    border-top: 1px solid #edf0f2;
    border-bottom: 1px solid #edf0f2;
}
/* list */
ul.list {
    padding: 0;
    list-style: none;
    border: #ccc solid 1px;
    border-left: #ccc solid 10px;
    padding: 20px;
    background: #fff;
    margin: 0 0 80px;
}
/* 署名 */
p.signature {
    text-align: right;
    font-size: 18px;
    margin-top: 3em;
}
/* table */
table.biz_info {
    width: 100%;
    border-collapse: collapse;
}
table.biz_info td, table.biz_info th {
    border: solid 1px #cfcfcf;
    padding: 16px;
}
table.biz_info th {
    font-weight: normal;
    text-align: left;
    background: #F2F2F2;
}
table.biz_info td {
    vertical-align: middle;
}
/* footer */
.footer_text p {
    font-size: 14px;
    margin-top: 0.5em;
}
.copyright {
    padding-top: 2em;
    margin-bottom: 2em;
}
footer {
    display: inline-block !important;
    background: #fafafa;
    width: 100%;
    border-top: 1px solid #edf0f2;
}
.footer_text {
    float: left;
    display: inline-block;
    color: #241913;
    margin-right: 5em;
}
.footer_link_list {
    display: inline-block;
    float: left;
}
li.footer-list-item a {
    font-size: 13px;
    color: #076a75;
}
.footer_cont {
    padding: 15px;
}

/*
 header logo ---------------------------------------------- */
 .header .navbar-logo, .header .navbar-logo-img {
    width: 300px;
    height: auto;
}

/*
 privacy_policy ---------------------------------------------- */
 ul.pp_ul {
    list-style: none;
    padding: 0;
    line-height: 1.8em;
    border: 1px solid #ddd;
    padding: 1.5em 1.5em 0.5em 2.5em;
    margin-bottom: 2em;
}
ul.pp_ul li {
    margin-bottom: 0.8em;
    text-indent: -1em;
    font-size: 14px;
}
ul.rule_list {
    list-style: none;
    padding: 0;
    line-height: 1.8em;
    padding-left: 1.8em;
}
ul.rule_list li {
    font-size: 14px;
    text-indent: -1.8em;
}

@media screen and ( max-width:640px) {
/*
 common ---------------------------------------------- */
    /* 画面サイズが640pxまでのスタイル */
    /* footer */
    .footer_text p {
        padding-top: 0.5em;
        margin-bottom: 0;
    }
    .footer_link_list {
        display: none;
    }
    .footer_cont {
        text-align: center;
    }
    .footer_text {
        float: none;
        display: block;
        color: #241913;
        margin-right: 0;
        text-align: center;
    }
    .footer_text p {
        padding-top: 0.5em;
        margin-bottom: 0;
    }
}

@media screen and ( max-width:990px) {
/*
 common ---------------------------------------------- */
    /* 画面サイズが990pxまでのスタイル */
    /* container */
    .container {
        width: 100% !important;
    }
    /* header */
    nav.navbar {
        width: 100%;
    }
    .header .navbar>.container {
    background: #fff;
    }
    header.header {
        box-shadow: none;
    }
    .header .navbar-logo, .header .navbar-logo-img {
        width: 280px;
        height: auto;
    }
    /* margin */
    .margin-b-100 {
        margin-bottom: 50px !important;
    }
    /* padding */
    footer.footer .content-md {
        padding-bottom: 50px;
        padding-top: 50px;
    }
    .container {
        padding-right: 1em !important;
        padding-left: 1em !important;
    }
    /* nav */
    ul.navbar-nav {
        padding-bottom: 1.5em;
    }
    nav.navbar .container {
        padding-bottom: 4px;
        box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.03), 0px 4px 4px 0px rgba(0, 0, 0, 0.03);
    }
    /* title */
    h2 {
        font-size: 20px;
    }
    .header_title h2 {
        font-size: 20px;
        padding-bottom: 0;
    }
    .header_title p {
        font-size: 14px;
    }
    h3 {
        font-size: 16px;
        padding: 0.8em;
        margin: 50px 0 24px;
    }
    h4 {
        font-size: 16px;
    }
    li {
        line-height: 1.8em;
    }
    /* font */
    p, ul.list li {
        font-size: 14px;
    }
    /* contents */
    body.ps_policy .content-md.ps_wrap {
        padding-top: 3em;
    }
    p.signature {
        font-size: 16px;
    }
    /* list */
    table.biz_info th, table.biz_info td {
        display: block;
        width: 100%;
        font-size: 12px;
        border-bottom: none;
    }
    table.biz_info th {
        padding: 10px;
    }
    table.biz_info tr:last-of-type td {
        border-bottom: solid 1px #cfcfcf;
    }
}

