@charset "UTF-8";
#contentContainer #contentArea {
    width: 100%;
    margin: 0 auto;
}


/************************
layout
************************/

.content__wrapper {
    width: 100%;
    max-width: 1560px;
    padding: 0 80px;
    font-size: 14px;
    line-height: 1.5;
    box-sizing: border-box;
}

.content__wrapper p {
    color: #3A4763;
    font-size: 14px;
}

@media (max-width: 1024px) {
    .content__wrapper {
        padding: 0 40px;
    }
}

@media (max-width: 640px) {
    .content__wrapper {
        font-size: 13px;
        padding: 0 15px;
    }
    .content__wrapper p {
        font-size: 13px;
    }
    br.nobr {
        display: none;
    }
}


/** relatedArea **/

.related__wrapper {
    width: 100%;
    max-width: 1560px;
    padding: 0 80px;
    font-size: 14px;
    line-height: 1.5;
    box-sizing: border-box;
    margin: 0 auto;
}

@media (max-width: 1024px) {
    .related__wrapper {
        padding: 0 40px;
    }
    .related__wrapper.p0 {
        padding: 0;
    }
}

@media (max-width: 640px) {
    .related__wrapper {
        font-size: 13px;
        padding: 0 15px;
    }
    .related__wrapper p {
        font-size: 13px;
    }
}


/** section **/

section.content__area {
    margin-bottom: 80px;
}

@media (max-width: 640px) {
    section.content__area {
        margin-bottom: 40px;
    }
}

section.related {
    max-width: 1560px;
    margin: 0 auto;
}

@media (max-width: 1024px) {
    section.related {
        padding: 0 40px;
    }
}

@media (max-width: 768px) {
    section.related.guide {
        padding: 0;
    }
}

@media (max-width: 640px) {
    section.related {
        padding: 0 15px;
    }
}


/************************
title
************************/

.mod__ttl01 {
    font-size: 28px;
    font-weight: bold;
    margin-bottom: 65px;
}

.mod__ttl02 {
    font-size: 22px;
    font-weight: bold;
    margin-bottom: 20px;
}

.mod__ttl02-02 {
    font-size: 22px;
    font-weight: bold;
    background-color: #F6F8FA;
    text-align: center;
    padding: 20px;
    margin-bottom: 40px;
}

.mod__ttl03 {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 10px;
}

@media (max-width: 640px) {
    .mod__ttl01 {
        font-size: 18px;
        margin-bottom: 20px;
    }
    .mod__ttl02 {
        font-size: 16px;
        margin-bottom: 20px;
    }
    .mod__ttl02-02 {
        font-size: 16px;
        padding: 18px;
        margin-bottom: 20px;
    }
    .mod__ttl02-face {
        font-size: 16px;
        padding: 16px;
        margin-bottom: 10px;
    }
    .mod__ttl3 {
        font-size: 14px;
        margin-bottom: 15px;
    }
    .guide__ttl {
        padding-left: 15px;
    }
}


/************************
txt
************************/

.mod__txt {
    margin-bottom: 30px;
}

.mod__txt.line {
    padding-bottom: 30px;
    border-bottom: solid 1px #D3D6DB;
    margin-bottom: 30px;
}


/************************
navigation
************************/

ul.nav {
    background-color: #D3D6DB;
    width: 100%;
    padding: 4px 2px;
    box-sizing: border-box;
    overflow: hidden;
}

ul.nav.single {
	width: 50%;
}

ul.nav.frame-sgape {
    margin: 30px 0 40px 0;
}

ul.nav li {
    float: left;
    width: 25%;
    padding: 0 2px;
    box-sizing: border-box;
}

ul.nav li > a.nav_main {
    display: block;
    background-color: #fff;
    padding: 5px;
    position: relative;
    transition: 0.3s;
}

ul.nav li > a.nav_main:hover {
    background-color: #F6F8FA;
}

ul.nav li > a.nav_main > img.fig__face {
    height: 66px;
    padding-left: 40px;
    padding-right: 15px;
}

ul.nav li > a.nav_main > img,
ul.nav li > a.nav_main > p {
    display: inline-block;
    vertical-align: middle;
    font-size: 16px;
    font-weight: bold;
}

ul.nav li > a.nav_main::after {
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    border-bottom: 2px solid #3A4763;
    border-left: 2px solid #3A4763;
    -ms-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    position: absolute;
    top: calc(50% - 5px);
    right: 8px;
    z-index: 2;
}

ul.nav li > a.nav_main.top::after {
    -ms-transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}

ul.nav.nav__sub li {
    text-align: center;
}

@media (max-width: 1024px) {
    ul.nav li {
        width: 50%;
        padding-bottom: 4px;
    }
    ul.nav li:nth-child(3),
    ul.nav li:nth-child(4) {
        padding-bottom: 0;
    }
}

@media (max-width: 640px) {
    ul.nav li > a.nav_main > img.fig__face {
        height: 45px;
        padding-left: 10px;
        padding-right: 5px;
    }
    ul.nav li > a.nav_main > p {
        font-size: 12px;
    }
}


/** navigation related **/

ul.nav.related__nav {
    background-color: #F6F8FA;
    margin-bottom: 80px;
    padding: 30px 15px;
}

ul.nav.related__nav li {
    padding: 0 15px;
}

@media (max-width: 1024px) {
    ul.nav.related__nav {
        margin-bottom: 60px;
        padding: 30px 15px 0 15px;
    }
    ul.nav.related__nav li {
        width: 50%;
        margin-bottom: 30px;
    }
}

@media (max-width: 640px) {
    ul.nav.related__nav {
        padding: 15px 8px 8px 8px;
        margin-bottom: 35px;
    }
    ul.nav.related__nav li {
        width: 50%;
        padding: 8px;
        margin-bottom: 8px;
    }
}


/** navigation related item **/

ul.nav.related__nav li a.related__nav__item {
    display: block;
    position: relative;
    background-color: #fff;
    border: 1px solid #D3D6DB;
    padding: 0;
    transition: 0.3s;
}

ul.nav.related__nav li a.related__nav__item .related__nav__fig__area {
    width: 100%;
}

ul.nav.related__nav li a.related__nav__item .related__nav__fig__area > img.related__nav__fig {
    display: block;
    width: 100%;
    border-bottom: 1px solid #D3D6DB;
    transition: 0.3s;
}

ul.nav.related__nav li a.related__nav__item .related__nav__txt {
    position: relative;
    padding: 20px 30px 30px 12px;
    transition: 0.3s;
}

ul.nav.related__nav li a.related__nav__item .related__nav__txt::after {
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    border-bottom: 2px solid #3A4763;
    border-left: 2px solid #3A4763;
    -ms-transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
    position: absolute;
    top: calc(50% - 5px);
    right: 7px;
    z-index: 2;
}

ul.nav.related__nav li a.related__nav__item:hover .related__nav__fig__area > img.related__nav__fig,
ul.nav.related__nav li a.related__nav__item:hover .related__nav__txt {
    opacity: 0.7;
}

ul.nav.related__nav li a.related__nav__item .related__nav__txt strong {
    display: block;
    font-size: 20px;
    font-weight: bold;
}

@media (max-width: 640px) {
    ul.nav.related__nav li a.related__nav__item .related__nav__txt strong {
        font-size: 16px;
    }
}


/** navigation size **/

ul.nav.size li {
    width: 50%;
}

ul.nav.size.single li {
    width: 100%;
}

ul.nav.size li > a {
    text-align: center;
}

ul.nav.size li > a > img.fig__size {
    height: 52px;
    padding-right: 15px;
}

@media (max-width: 1024px) {
	ul.nav.size.single {
		width: 100%;
	}
    ul.nav.size li,ul.nav.size.single li {
        float: none;
        width: 100%;
        padding-bottom: 4px;
    }
    ul.nav.size li:last-child {
        padding-bottom: 0;
    }
    ul.nav.size li > a {
        text-align: left;
    }
    ul.nav li > a > img.fig__size {
        height: 40px;
        padding-left: 10px;
        padding-right: 10px;
    }
}

@media (max-width: 640px) {
    ul.nav li > a > img.fig__size {
        height: 30px;
        padding-right: 10px;
    }
}


/************************
col 02
************************/

.mod__col02__tbl {
    display: table;
}

.mod__col02__tbl > .col_l,
.mod__col02__tbl > .col_r {
    display: table-cell;
    width: 50%;
    box-sizing: border-box;
}

.mod__col02__tbl > .col_l {
    padding-right: 15px;
}

.mod__col02__tbl > .col_r {
    padding-left: 15px;
}

@media (max-width: 640px) {
    .mod__col02__tbl > .col_l,
    .mod__col02__tbl > .col_r {
        display: block;
        width: 100%;
    }
    .mod__col02__tbl > .col_l {
        padding-right: 0;
    }
    .mod__col02__tbl > .col_r {
        padding-left: 0;
    }
}


/** キャプション **/

.mod__col02__tbl > .col_l > p,
.mod__col02__tbl > .col_r > p {
    margin-top: 25px;
}

@media (max-width: 640px) {
    .mod__col02__tbl > .col_l > p,
    .mod__col02__tbl > .col_r > p {
        margin-top: 7px;
    }
    .size_confirm__fig .mod__col02__tbl > .col_l,
    .size_confirm__fig .mod__col02__tbl > .col_r {
        text-align: center;
    }
    .size_confirm__fig .mod__col02__tbl > .col_l {
        margin-bottom: 30px;
    }
}


/************************
col glasses main
************************/

ul.mod__col__glasses_main {
    display: table;
    width: 100%;
    margin-bottom: 65px;
}

ul.mod__col__glasses_main li {
    display: table-cell;
    width: 33.3333%;
    text-align: center;
    padding: 0 40px;
    box-sizing: border-box;
}

@media (max-width: 1024px) {
    ul.mod__col__glasses_main li {
        padding: 0 20px;
    }
}

@media (max-width: 640px) {
    ul.mod__col__glasses_main {
        margin-bottom: 40px;
    }
    ul.mod__col__glasses_main li {
        display: block;
        width: 100%;
        padding: 0 15px;
        margin-bottom: 40px;
    }
    ul.mod__col__glasses_main li:last-child {
        margin-bottom: 0;
    }
}


/** col glasses_main_info **/

.glasses_main_info .mod__ttl03 {
    text-align: center;
}

.glasses_main_info {
    display: block;
    margin-bottom: 40px;
}

.glasses_main_info .glasses_main_info__col02,
.glasses_main_info img {
    display: block;
    margin: 0 auto;
}

.glasses_main_info p {
    margin-bottom: 15px;
    text-align: center;
}

.glasses_main_info img.fig_star {
    margin-top: 15px;
}

@media (max-width: 640px) {
    .glasses_main_info {
        display: table;
        width: 100%;
        margin-bottom: 20px;
    }
    .glasses_main_info .glasses_main_info__col02 {
        display: table-cell;
        width: 50%;
        padding: 0 3px 0 0;
        vertical-align: top;
        box-sizing: border-box;
    }
    .glasses_main_info img.fig_star {
        width: 40%;
        margin-top: 5px;
    }
}


/************************
col glasses sub
************************/

.mod__col__glasses_sub__area {
    width: 100%;
    padding-bottom: 80px;
    border-bottom: 1px solid #D3D6DB;
    margin-bottom: 80px;
}

ul.mod__col__glasses_sub {
    overflow: hidden;
    margin-left: -60px;
}

ul.mod__col__glasses_sub li {
    float: left;
    width: 20%;
    padding-left: 60px;
    box-sizing: border-box;
}

ul.mod__col__glasses_sub li img.sub_glasses {
    width: 160px;
    padding-bottom: 15px;
}

@media (max-width: 1024px) {
    .mod__col__glasses_sub__area {
        padding-bottom: 10px;
        margin-bottom: 40px;
    }
    ul.mod__col__glasses_sub {
        margin-left: 0;
    }
    ul.mod__col__glasses_sub li {
        width: 50%;
        padding: 0 30px;
        margin-bottom: 30px;
    }
}

@media (max-width: 640px) {
    ul.mod__col__glasses_sub li {
        width: 50%;
        padding: 0 15px;
        margin-bottom: 30px;
    }
    ul.mod__col__glasses_sub li img.sub_glasses {
        width: 120px;
    }
}


/************************
face info
************************/

.content__face-info {
    width: 900px;
    margin: 0 auto;
    margin-bottom: 80px;
}

.content__face-info > .col_l,
.content__face-info > .col_r {
    vertical-align: middle;
}

.content__face-info > .col_l {
    width: 55%;
    padding-right: 40px;
    box-sizing: border-box;
}

.content__face-info > .col_r {
    width: 75%;
}

.content__face-info > .col_r > p {
    font-size: 18px;
    line-height: 1.8;
}

@media (max-width: 1024px) {
    .content__face-info {
        width: 100%;
    }
    .content__face-info > .col_l {
        padding-right: 30px;
    }
}

@media (max-width: 640px) {
    .content__face-info > .col_l,
    .content__face-info > .col_r {
    }
    .content__face-info > .col_l {
        width: 100%;
    }
    .content__face-info > .col_r {
        width: 100%;
    }
    .content__face-info > .col_r > p {
        font-size: 13px;
        line-height: 1.5;
    }
}


/************************
table
************************/

.mod__tbl {
    width: 100%;
    margin: 30px 0;
}

.mod__tbl th,
.mod__tbl td {
    border: solid 1px #D3D6DB;
    text-align: center;
}

.mod__tbl th {
    background-color: #F6F8FA;
}

.mod__tbl th {
    padding: 15px;
}

.mod__tbl td > div {
    padding: 20px 60px;
}

.mod__tbl td > div > p {
    margin-bottom: 15px;
}

@media (max-width:1024px) {
    .mod__tbl thead {
        display: none;
    }
    .mod__tbl td {
        display: block;
        border-top: none;
        border-bottom: solid 1px #D3D6DB;
    }
    .mod__tbl td:first-child {
        border-top: solid 1px #D3D6DB;
    }
    .mod__tbl td::before {
        background-color: #F6F8FA;
        padding: 20px;
        display: block;
        border-bottom: solid 1px #D3D6DB;
    }
    .mod__tbl td:nth-of-type(1)::before {
        content: "Small"
    }
    .mod__tbl td:nth-of-type(2)::before {
        content: "Medium"
    }
    .mod__tbl td:nth-of-type(3)::before {
        content: "Large"
    }
}

@media (max-width:1024px) {
    .mod__tbl td > div > p {
        margin-bottom: 20px;
    }
}


/************************
button
************************/

.mod__btn {
    width: 100%;
}

.mod__btn > a {
    position: relative;
    display: block;
    padding: 12px 20px;
    border: 1px solid #3A4763;
    border-radius: 5px;
    color: #3a4763;
    font-size: 14px;
    background-color: #fff;
    text-align: center;
    text-decoration: none;
    transition: 0.3s;
}

.mod__btn > a::after {
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    border-bottom: 2px solid #3A4763;
    border-left: 2px solid #3A4763;
    -ms-transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
    position: absolute;
    top: calc(50% - 5px);
    right: 15px;
    z-index: 2;
}

.mod__btn > a:hover {
    color: #fff;
    background-color: #3a4763;
}

.mod__btn > a:hover::after {
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
}

@media (max-width: 768px) {
    .mod__btn.guide_area {
        padding: 0 20px;
        margin-top: 20px;
        margin-bottom: 40px;
        box-sizing: border-box;
    }
    
    .mod__btn.guide_area > a.guide_link {
        padding: 20px 12px;
    }
    .mod__btn.guide_area > a.guide_link::after {
        left: 15px;
        -ms-transform: rotate(45deg);
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
}
@media (max-width: 640px) {
    .mod__btn > a {
        padding: 12px 30px;
    }
}


/************************
txt link
************************/

.mod__btn__txt {
    width: 100%;
    margin-bottom: 38px;
}

.mod__btn__txt > a {
    position: relative;
    display: block;
    padding-left: 20px;
    color: #3a4763;
    font-size: 16px;
    font-weight: bold;
    text-decoration: none;
    transition: 0.3s;
}

.mod__btn__txt > a::before {
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    border-bottom: 2px solid #3a4763;
    border-left: 2px solid #3a4763;
    -ms-transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
    position: absolute;
    top: calc(50% - 5px);
    left: 0;
}

.mod__btn__txt > a:hover {
    opacity: 0.7;
}

@media (max-width:640px) {
    .mod__btn__txt {
        margin-bottom: 20px;
    }
    .mod__btn__txt > a {
        font-size: 14px;
    }
}


/************************
list notice
************************/

ul.mod__lst__notice {
    margin-bottom: 30px;
}

ul.mod__lst__notice li {
    position: relative;
    padding-left: 14px;
    font-size: 12px;
    margin-bottom: 3px;
}

ul.mod__lst__notice li:last-child {
    margin-bottom: 0;
}

ul.mod__lst__notice li::before {
    content: "※";
    position: absolute;
    left: 0;
}


/************************
list number
************************/

ol.mod__lst__number {
    counter-reset: counter;
    margin-bottom: 15px;
}

ol.mod__lst__number li {
    position: relative;
    padding-left: 26px;
    margin-bottom: 4px;
}

ol.mod__lst__number li:before {
    content: "";
    position: absolute;
    left: 0;
    content: counter(counter);
    counter-increment: counter;
    background-color: #fff;
    color: #3A4763;
    display: block;
    line-height: 15px;
    text-align: center;
    height: 15px;
    width: 15px;
    border: 1px solid #3A4763;
    border-radius: 50%;
}


/************************
box
************************/

.mod__box {
    background-color: #fff;
    padding: 30px;
    border: 3px solid #D3D6DB;
    box-sizing: border-box;
    margin-bottom: 36px;
}

@media (max-width: 1024px) {
    .mod__box {
        padding: 15px;
    }
}


/************************
unique
************************/


/** サイズについて **/

.fig__size-img {
    width: 470px;
    margin: 0 auto;
    margin-bottom: 30px;
}

@media (max-width:640px) {
    .fig__size-img {
        width: 80%;
    }
}


/** サイズの確認方法 画像エリア **/

.size_confirm__fig {
    padding: 0 60px;
    margin-bottom: 120px;
}

@media (max-width: 1024px) {
    .size_confirm__fig {
        padding: 0 15px;
        margin-bottom: 40px;
    }
}


/************************
other
************************/

.clearfix:after {
    content: "";
    display: table;
    clear: both;
}

.mod-sp {
    display: none;
}

@media (max-width: 768px) {
    .mod-sp {
        display: block;
    }
}


/************************
linklist
************************/

.mod-linklist {
    margin-bottom: 60px;
}

.mod-linklist dl {
    padding: 15px 10px 10px;
    background-color: #F6F8FA;
}

@media (max-width: 768px) {
    .mod-linklist dl {
        background-color: transparent;
        padding: 0;
        border-bottom: solid 1px #D3D6DB;
        border-top: solid 1px #D3D6DB;
    }
}

.mod-linklist dl + dl {
    margin-top: 20px;
}

@media (max-width: 768px) {
    .mod-linklist {
        margin-bottom: 0;
    }
    .mod-linklist dl + dl {
        margin-top: 0;
    }
}

.mod-linklist dt {
    margin-bottom: 10px;
    padding-left: 8px;
    font-weight: bold;
    font-size: 16px;
}

@media (max-width: 768px) {
    .mod-linklist dt {
        padding: 20px 30px 20px 15px;
        margin-bottom: 0;
        position: relative;
        font-weight: normal;
        font-size: 16px;
        cursor: pointer;
    }
    .mod-linklist dt:before {
        content: "";
        background-image: url(/client_info/JINSJINS/view/userweb/ext/guide/common/img/arrow02_acc.png);
        background-position: 0 0;
        background-repeat: no-repeat;
        background-size: 11px auto;
        position: absolute;
        top: 0;
        right: 15px;
        bottom: 0;
        margin: auto;
        width: 11px;
        height: 6px;
    }
    .mod-linklist dt.on:before {
        background-position: 0 -6px;
    }
}

@media (max-width: 414px) {
    .mod-linklist dt {
        font-size: 12px;
    }
}

@media (max-width: 768px) {
    .mod-linklist .type02 dt {
        padding: 30px 80px 30px 45px;
    }
    .mod-linklist .type02 dt:before {
        right: 45px;
    }
}

.mod-linklist dd {
    background-color: #fff;
    padding: 15px 20px 10px;
}

@media (max-width: 768px) {
    .mod-linklist dd {
        display: none;
        padding: 0 0 10px;
    }
    .mod-linklist dd:before {
        content: "";
        width: 30px;
        height: 1px;
        margin: 0 0 20px 15px;
        background-color: #3a4763;
        display: block;
    }
}

@media (max-width: 768px) {
    .mod-linklist .type02 dd {
        padding-bottom: 30px;
    }
}

@media (max-width: 768px) {
    .mod-linklist .type02 dd:before {
        margin-bottom: 30px;
        margin-left: 45px;
    }
}

.mod-linklist ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.mod-linklist ul:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}

@media (max-width: 768px) {
    .mod-linklist ul {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
    }
}

.mod-linklist ul li {
    display: block;
    width: 25%;
    margin-bottom: 10px;
    box-sizing: border-box;
    float: left;
}

@media (max-width: 768px) {
    .mod-linklist ul li {
        width: auto;
        float: none;
    }
}

.mod-linklist ul li:not(:nth-child(4n)) {
    padding-right: 30px;
}

@media (max-width: 768px) {
    .mod-linklist ul li:not(: nth-child(4n)) {
        padding-right: 0;
    }
}

.mod-linklist ul a {
    display: block;
    background-image: url(/client_info/JINSJINS/view/userweb/ext/guide/common/img/arrow02.png);
    background-position: 0 0.4em;
    background-repeat: no-repeat;
    background-size: 6px auto;
    padding-left: 16px;
    font-size: 14px;
    font-weight: normal;
    color: #616c82;
}

@media (max-width: 768px) {
    .mod-linklist ul a {
        background-image: none;
        padding-left: 15px;
        padding-right: 15px;
        font-size: 12px;
    }
}

.mod-linklist ul a:hover {
    text-decoration: underline;
}

@media (max-width: 768px) {
    .mod-linklist .type02 ul a {
        padding-left: 45px;
        padding-right: 45px;
    }
}

.mod-linklist .link {
    border-bottom: solid 1px #d9dde5;
}

.mod-linklist .link a {
    display: block;
    position: relative;
    padding: 20px 30px 20px 15px;
    font-size: 14px;
    color: #3a4763;
    font-weight: normal;
}

@media (max-width: 414px) {
    .mod-linklist .link a {
        font-size: 12px;
    }
}

.mod-linklist .link a:before {
    content: "";
    background-image: url(/client_info/JINSJINS/view/userweb/ext/guide/common/img/arrow02.png);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 6px auto;
    position: absolute;
    top: 0;
    right: 15px;
    bottom: 0;
    margin: auto;
    width: 6px;
    height: 11px;
}

.mod-linklist .link.type02 a {
    padding: 30px 80px 30px 45px;
}

.mod-linklist .link.type02 a:before {
    right: 45px;
}