@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP&family=Noto+Serif+JP&display=swap');
@charset "UTF-8";
@import url(//fonts.googleapis.com/css?family=Ibarra+Real+Nova&amp;display=swap);

abbr,
address,
article,
aside,
audio,
b,
blockquote,
body,
button,
caption,
cite,
code,
dd,
del,
dfn,
dialog,
div,
dl,
dt,
em,
fieldset,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
p,
pre,
q,
samp,
section,
small,
span,
strong,
sub,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
ul,
var,
video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 1em
}

html {
    font-size: 62.5%
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: bold
}

input,
option,
select,
table,
textarea {
    line-height: 1.1
}

ol,
ul {
    list-style: none
}

blockquote,
q {
    quotes: none
}

fieldset {
    min-width: 100%;
    width: 100%;
    display: table
}

button {
    margin: 0;
    padding: 0;
    border: 0;
    background: 0;
    cursor: pointer
}

:focus {
    outline: 0
}

ins {
    text-decoration: none
}

del {
    text-decoration: line-through
}

img {
    vertical-align: top
}

@media only screen and (max-width:768px) {
    img {
        max-width: 100%;
        height: auto
    }
}

body,
button,
h1,
h2,
h3,
h4,
h5,
h6,
input,
option,
select,
table,
textarea {
    color: #333;
    font-family: 'Noto Sans JP', "繝偵Λ繧ｮ繝手ｧ偵ざ ProN W3", "Hiragino Kaku Gothic ProN", "繝｡繧､繝ｪ繧ｪ", Meiryo, sans-serif;
    line-height: 1.1
}

a:link {
    color: #000;
    text-decoration: underline
}

a:visited {
    color: #000;
    text-decoration: underline
}

a:hover {
    color: #000;
    text-decoration: none
}

a:active {
    color: #000;
    text-decoration: none
}

.clearfix::after {
    content: "";
    display: block;
    clear: both
}

img {
    max-width: 100%;
    height: auto;
    vertical-align: top
}

.pcOnly {
    display: block
}

.spOnly {
    display: none
}

@media screen and (max-width:767px) {
    .pcOnly {
        display: none
    }
    .spOnly {
        display: block
    }
}

#wrap {
    min-width: 1000px
}

@media screen and (max-width:767px) {
    #wrap {
        width: 100%;
        min-width: 0
    }

    #wrap.menuActive {
        position: fixed;
        left: 0;
        z-index: 1
    }

    #wrap .fixedWrap {
        width: 100%;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 9999;
        overflow: hidden
    }
}

header {
    background: #001c5d
}

header .inner {
    width: 1120px;
    margin: 0 auto;
    position: relative
}

header .inner .logo {
    float: left;
    margin-left: 60px;
    position: relative;
    z-index: 99;
}
header .inner .logo a {
  display: flex;
  align-items: center;
}
header .inner .logo a img:nth-child(2) {
  margin: 0 0 0 17px;
}

header .inner .inquiry {
  float: left;
  /* padding: 16px 0 0 98px; */
  padding: 16px 0 0 250px;
}
header .inner .inquiry img {
  margin-right: 10px;
}
header .inner .inquiry img:hover {
  opacity: 0.7;
}
header .inner .contact {
  font-family: 'Noto Serif JP', serif;
  float: left;
  padding: 11px 0 0 0;
}
header .inner .contact p.tel {
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.2;
  letter-spacing: 1.2px;
}
header .inner .contact p.title {
  color: #fff;
  font-size: 10px;
}

header .inner .hige-menu,
header .inner .access,
header .inner .menu {
    display: none
}

@media screen and (max-width:767px) {
    header {
        position: relative;
        z-index: 999
    }
  header .inner {
    width: 100%;
    padding: 0; /*1.87vw 0 0*/
  }

  header .inner::before {
    content: none;
  }

  header .inner .logo {
    margin: 0; /*0 0 0 1.64vw*/
  }
  header .inner .logo a img:nth-child(1) {
    width: 11.76vw; /*9.89vw*/
  }
  header .inner .logo a img:nth-child(2) {
    width: 50.79vw;
    margin: 0 0 0 2.73vw;
  }

  header .inner .inquiry,
  header .inner .contact {
    display: none;
  }

  header .inner .hige-menu {
    display: block;
    position: absolute;
    top: 3.13vw; /*4.13vw*/
    right: 23.03vw;
  }

  header .inner .hige-menu a {
    display: block;
    color: #fff;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    position: relative;
  }

  header .inner .hige-menu a::before {
    content: "";
    display: block;
    width: 3.54vw;
    height: 5.33vw;
    background: url(../img/common/header/icon_price.png) no-repeat;
    background-size: 100% auto;
  }

  header .inner .access {
    display: block;
    position: absolute;
    top: 3.13vw; /*4.13vw*/
    right: 15.03vw;
  }

  header .inner .access a {
    display: block;
    color: #fff;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    position: relative;
  }

  header .inner .access a::before {
    content: "";
    display: block;
    width: 3.54vw;
    height: 5.33vw;
    background: url(../img/common/header/icon_pin.png) no-repeat;
    background-size: 100% auto;
  }

  header .inner .menu {
    display: block;
    position: absolute;
    top: 3.13vw; /*4.13vw*/
    right: 5.64vw;
  }

  header .inner .menu a {
    display: block;
    color: #fff;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    position: relative;
  }

  header .inner .menu a::before {
    content: "";
    display: block;
    width: 5.248vw;
    height: 4.908vw;
    background: url(../img/common/header/nav.png) no-repeat;
    background-size: 100% auto;
  }
}

@media screen and (max-width:370px) {
    header .inner {
        -webkit-background-size: 65% 53px;
        background-size: 65% 53px
    }
}

#gNavi {
    background: #EEE
}
@media screen and (max-width:767px) {
    #gNavi {
        display: none;
    }
}

#gNavi>ul {
    width: 1000px;
    margin: 0 auto;
    position: relative
}

#gNavi>ul>li {
    float: left;
    padding: 5px 0
}

#gNavi>ul>li>a {
    display: block;
    width: 143px;
    font-size: 1.7rem;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    line-height: 51px;
    position: relative
}

#gNavi>ul>li>a.spOnly {
    display: none
}

#gNavi>ul>li:first-child>a {
    width: 142px
}

/* #gNavi>ul>li:nth-child(2)>a {
    height: 44px;
    padding-top: 7px;
    line-height: 1.2
} */

#gNavi>ul>li:nth-child(4)>a {
    font-size: 1.6rem
}

#gNavi>ul>li>a::after {
    content: "";
    display: block;
    width: 1px;
    height: 51px;
    background: #BBB;
    position: absolute;
    top: 0;
    right: 0
}

#gNavi>ul>li:first-child>a::before {
    content: "";
    display: block;
    width: 1px;
    height: 51px;
    background: #BBB;
    position: absolute;
    top: 0;
    left: 0
}

#gNavi>ul>li>.subNavi {
    display: none;
    width: 1000px;
    background: url(../img/common/bg_subnavi01.png) repeat;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 99
}

#gNavi>ul>li>.subNavi .inner {
    padding: 50px 0 25px;
    position: relative
}

#gNavi>ul>li>.subNavi .inner .featureList {
    width: 926px;
    margin: 0 auto 20px
}

#gNavi>ul>li>.subNavi .inner .featureList li {
    float: left;
    margin-left: 9px
}

#gNavi>ul>li>.subNavi .inner .featureList li:first-child {
    margin-left: 0
}

#gNavi>ul>li>.subNavi .inner .featureList li span {
    display: block;
    text-decoration: none
}

#gNavi>ul>li>.subNavi .inner .featureList li .link {
    display: block;
    margin-bottom: 7px;
    /* padding: 25px 15px 23px; */
    padding: 7px 5px 7px 5px;
    background: #ececfb;
    -webkit-border-radius: 10px;
    border-radius: 10px;
    color: #001b5d;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.4;
    text-decoration: none;
    position: relative;
    text-align: center;
}

/* #gNavi>ul>li>.subNavi .inner .featureList li .link:hover {
    text-decoration: underline
} */

/* #gNavi>ul>li>.subNavi .inner .featureList li .link::after {
    content: "";
    display: block;
    width: 22px;
    height: 32px;
    background: url(../img/common/arrow_subnavi01.png) no-repeat;
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -16px
} */

#gNavi>ul>li>.subNavi .inner .beforeAfterList {
    width: 934px;
    margin: -22px auto 0
}

#gNavi>ul>li>.subNavi .inner .beforeAfterList li {
    float: left
}

#gNavi>ul>li>.subNavi .inner .beforeAfterList li:first-child {
    margin-right: 34px
}

#gNavi>ul>li>.subNavi .inner .beforeAfterList li a {
    display: block;
    text-decoration: none
}

#gNavi>ul>li>.subNavi .inner .beforeAfterList li .info {
    padding: 0 15px 15px;
    background: #FFF
}

#gNavi>ul>li>.subNavi .inner .beforeAfterList li .info dl {
    padding: 18px 0 18px 20px;
    background: #edebfc;
    -webkit-border-radius: 6px;
    border-radius: 6px;
    overflow: hidden
}

#gNavi>ul>li>.subNavi .inner .beforeAfterList li .info dl dt,
#gNavi>ul>li>.subNavi .inner .beforeAfterList li .info dl dd {
    float: left;
    font-size: 1.4rem
}

#gNavi>ul>li>.subNavi .inner .beforeAfterList li .info dl dt {
    clear: left;
    width: 110px;
    font-weight: bold
}

#gNavi>ul>li>.subNavi .inner .beforeAfterList li .info dl dd {
    margin-bottom: 12px
}

#gNavi>ul>li>.subNavi .inner .beforeAfterList li .info dl dd:last-child {
    margin-bottom: 0
}

#gNavi>ul>li>.subNavi .inner .beforeAfterList li .btn {
    margin-top: 20px
}

#gNavi>ul>li>.subNavi .inner .beforeAfterList li .btn span {
    width: 380px;
    padding: 20px 0 18px
}

#gNavi>ul>li>.subNavi .inner .qaList {
    width: 915px;
    margin: 0 auto;
    padding-bottom: 10px
}

#gNavi>ul>li>.subNavi .inner .qaList li {
    float: left;
    margin: 0 0 35px 9px
}

#gNavi>ul>li>.subNavi .inner .qaList li:nth-child(4n+1) {
    margin-left: 0
}

#gNavi>ul>li>.subNavi .inner .qaList li a {
    display: block
}

#gNavi>ul>li>.subNavi .inner .qaList li .link {
    margin-top: 12px;
    padding: 0 15px
}

#gNavi>ul>li>.subNavi .inner .qaList li .link span {
    display: block;
    color: #FFF;
    font-size: 1.4rem;
    line-height: 1.4;
    text-decoration: underline;
    position: relative
}

#gNavi>ul>li>.subNavi .inner .qaList li a:hover .link span {
    text-decoration: none
}

#gNavi>ul>li>.subNavi .inner .qaList li .link span::after {
    content: "";
    display: block;
    width: 17px;
    height: 27px;
    background: url(../img/common/arrow_subnavi02.png) no-repeat;
    position: absolute;
    top: 50%;
    right: 0;
    margin-top: -13px
}

#gNavi>ul>li>.subNavi .inner .ttl {
    width: 916px;
    margin: 0 auto;
    color: #FFF;
    font-size: 2.1rem
}

#gNavi>ul>li>.subNavi .inner .accessBox {
    width: 900px;
    margin: 0 auto
}

#gNavi>ul>li>.subNavi .inner .accessBox .doctorBox {
    float: left;
    width: 260px
}

#gNavi>ul>li>.subNavi .inner .accessBox .doctorBox .btn {
    margin-top: 20px
}

#gNavi>ul>li>.subNavi .inner .accessBox .doctorBox .btn a {
    width: 260px
}

#gNavi>ul>li>.subNavi .inner .accessBox .clinicBox {
    float: right;
    width: 540px
}

#gNavi>ul>li>.subNavi .inner .accessBox .clinicBox .btn {
    margin-top: 20px
}

#gNavi>ul>li>.subNavi .inner .accessBox .clinicBox .btn a {
    width: 540px
}

#gNavi>ul>li>.subNavi .inner .priceBox {
    width: 900px;
    margin: 0 auto 20px
}

#gNavi>ul>li>.subNavi .inner .priceBox .complete {
    float: left
}

#gNavi>ul>li>.subNavi .inner .priceBox .parts {
    float: right
}

#gNavi>ul>li>.subNavi .inner .priceBox .parts li:last-child {
    margin-top: 14px
}

#gNavi>ul>li>.subNavi .inner .btn {
    text-align: center
}

#gNavi>ul>li>.subNavi .inner .btn a,
#gNavi>ul>li>.subNavi .inner .btn span {
    display: inline-block;
    width: 320px;
    padding: 16px 0 14px;
    background: #839dd1;
    -webkit-border-radius: 30px;
    border-radius: 30px;
    color: #FFF;
    font-size: 1.8rem;
    text-decoration: none
}

#gNavi>ul>li>.subNavi .inner .close {
    position: absolute;
    top: 15px;
    right: 19px;
    z-index: 99
}

#gNavi>ul>li>.subNavi .inner .close a {
    display: block;
    width: 21px;
    height: 21px;
    background: url(../img/common/icon_close01.png) no-repeat;
    text-indent: -9999px
}

@media screen and (min-width:768px) {

    #gNavi>ul>li:nth-child(4):hover {
        background: url(../img/common/arrow_navi01.png) no-repeat center bottom
    }

    #gNavi>ul>li>.subNavi .inner .btn a:hover {
        opacity: .7
    }
}

@media screen and (max-width:767px) {
    #gNavi {
        position: relative;
        -webkit-transition: .3s;
        transition: .3s
    }

    #gNavi>ul {
        display: -webkit-flex;
        display: flex;
        width: 100%
    }

    #gNavi>ul>li {
        width: 25%;
        padding: 3px 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box
    }

    #gNavi>ul>li:nth-child(1),
    #gNavi>ul>li:nth-child(6),
    #gNavi>ul>li:nth-child(7) {
        display: none
    }

    #gNavi>ul>li>a {
        width: 100% !important;
        padding: 11px 10px 11px 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        border-left: 1px solid #FFF;
        border-right: 1px solid #BBB;
        font-size: 1.1rem !important;
        line-height: 1.0
    }

    #gNavi>ul>li>a.pcOnly {
        display: none
    }

    #gNavi>ul>li>a.spOnly {
        display: block
    }

    #gNavi>ul>li:nth-child(2)>a,
    #gNavi>ul>li:nth-child(4)>a {
        height: auto;
        padding: 11px 10px 11px 0
    }

    #gNavi>ul>li:nth-child(2)>a {
        border-left: 0
    }

    #gNavi>ul>li:nth-child(5)>a {
        border-right: 0
    }

    #gNavi>ul>li>a::after {
        width: 7px;
        height: 11px;
        background: url(../img/common/arrow_gnavi01_sp.png) no-repeat;
        -webkit-background-size: 7px 11px;
        background-size: 7px 11px;
        top: 50%;
        right: 6px;
        margin-top: -5px
    }

    #gNavi>ul>li>a .pcView {
        display: none
    }
}

@media screen and (max-width:320px) {
    #gNavi{
        display: none;
    }
}

#mainVisual {
    background: url(../img/common/img_mainvisual01.jpg) no-repeat center 0;
    position: relative
}

#mainVisual .openText {
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    position: absolute;
    top: 350px;
    left: 0;
    right: 0;
    letter-spacing: -1px;
    margin-left: -712px
}

#mainVisual .openText .text01 {
    color: #ffffbf;
    font-size: 30px
}

#mainVisual .ttl {
    width: 1000px;
    height: 440px;
    margin: 0 auto;
    text-indent: -9999px
}

#mainVisual .ttl.lower {
    height: 390px
}

#mainVisual .lead {
    width: 100%;
    background: url(../img/common/bg_mainvisual01.png) no-repeat center;
    color: #FFF;
    font-size: 1.3rem;
    text-align: center;
    line-height: 30px;
    position: absolute;
    bottom: 0;
    left: 0
}

@media screen and (max-width:767px) {
    #mainVisual {
        background: 0
    }

    #mainVisual .ttl {
        display: none
    }

    #mainVisual .openText {
        color: #fff;
        font-size: 2.25vw;
        font-weight: bold;
        text-align: right;
        position: absolute;
        top: 53%;
        right: 2%;
        letter-spacing: 0;
        margin-left: 0
    }

    #mainVisual .openText .text01 {
        color: #ffffbf;
        font-size: 3.8vw
    }

    #mainVisual .lead {
        padding: 5px 0;
        background: #001c5d;
        font-size: 1.0rem;
        line-height: 1.4;
        position: static
    }
}

#slideMenu {
    display: none
}

@media screen and (max-width:767px) {
    .menu .hamIcon__Lines {
        width: 5.248vw;
        height: 4.908vw;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        align-items: center;
    }
    .menu .hamIcon__Lines::before,
    .menu .hamIcon__Lines::after {
        content: "";
    }
    .menu .hamIcon__Lines span,
    .menu .hamIcon__Lines::before,
    .menu .hamIcon__Lines::after {
        width: 100%;
        height: 2px;
        background-color: #bba170;
        display: block;
        transition: 0.3s ease-in-out;
    }
    .menu.active .hamIcon__Lines::before {
        transform: rotateZ(45deg) translateY(0px) translateX(0px);
        position: absolute;
        top: calc(50% - 1px);
    }
    .menu.active .hamIcon__Lines span {
        display: none;
    }
    .menu.active .hamIcon__Lines::after {
        transform: rotateZ(-45deg) translateY(0px) translateX(0px);
        position: absolute;
        bottom: calc(50% - 1px);
    }

    #slideMenu {
        width: 100%;
        height: 100%;
        position: relative;
        overflow: hidden
    }

    #slideMenu.active {
        display: block;
        position: fixed;
        top: 50px;
        right: 0;
        z-index: 1000
    }

    #slideMenu #overlay {
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.3);
        position: absolute;
        top: 0;
        left: 0;
        z-index: 99
    }

    #slideMenu .menuWrap {
        width: 100%;
        height: 100%;
        position: relative;
        z-index: 9999
    }

    #slideMenu .menuWrap .menuOuter {
        width: 100%;
        height: 100%;
        background: #000;
        position: absolute;
        top: 0;
        right: 0;
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch
    }

    #slideMenu .menuNav {
        height: 100%;
        position: relative
    }

    #slideMenu .menuNav ul li {
        border-bottom: 1px solid #333;
    }

    #slideMenu .menuNav ul li a {
        display: block;
        height: 59px;
        padding: 0 20px;
        background-repeat: no-repeat;
        color: #FFF;
        font-size: 12px;
        text-decoration: none;
        display: flex;
        align-items: center;
    }

    #slideMenu .menuNav .bnBox {
        margin-top: 10px;
        margin-bottom: 10px;
        padding: 0 4px 0 8px
    }

    #slideMenu .menuNav .close {
        position: absolute;
        top: 7px;
        right: 10px
    }

    #slideMenu .menuNav .close a {
        display: inline-block;
        padding: 22px 0 0;
        background: url(../img/common/icon_close01_sp.png) no-repeat center 0;
        -webkit-background-size: 18px 18px;
        background-size: 18px 18px;
        color: #FFF;
        font-size: 1.0rem;
        text-decoration: none
    }
    #slideMenu .menuNav .close a:after {
        content: none;
    }

    #slideMenu .menuNav .online_bnBox {
        display: inline-block;
        padding: 10px 10px 0;
        font-size: 0
    }

    #slideMenu .menuNav .online_bnBox .online_counseling {
        display: inline-block;
        width: 75%;
        /* margin-bottom: 10px; */
    }

    #slideMenu .menuNav .online_bnBox .online_tel {
        display: inline-block;
        width: 21%;
        margin-right: 4%
    }

    #slideMenu .menuNav .online_bnBox .online_meeting {
        display: inline-block;
        width: 75%
    }
}

#conts {
    display: block;
    width: 1000px;
    margin: 0 auto;
    padding-top: 45px
}

@media screen and (max-width:767px) {
    #conts {
        width: 100%;
        padding-top: 20px;
        overflow: hidden
    }
}

#breadCrumb {
    width: 1000px;
    margin: 9px auto 7px
}

#breadCrumb ol li {
    display: inline-block;
    margin-right: 4px;
    font-size: 1.1rem;
    font-weight: bold;
    line-height: 1.8
}

#breadCrumb ol li::after {
    content: ">";
    margin-left: 10px
}

#breadCrumb ol li:last-child::after {
    content: none
}

#breadCrumb ol li a {
    color: #2a2c7b
}

#breadCrumb ol .home a {
    display: inline-block;
    width: 17px;
    height: 17px;
    background: url(../img/common/icon_bread01.png) no-repeat;
    text-indent: -9999px
}

@media screen and (max-width:767px) {
    #breadCrumb {
        width: 100%;
        margin: 0
    }

    #breadCrumb ol {
        margin: 6px 7px
    }

    #breadCrumb ol li {
        font-size: 1.0rem;
        margin-right: 2px
    }

    #breadCrumb ol li::after {
        margin-left: 6px
    }

    #breadCrumb ol li.home a {
        width: 13px;
        height: 13px;
        background: url(../img/common/icon_bread01_sp.png) no-repeat;
        -webkit-background-size: 13px 13px;
        background-size: 13px 13px;
        vertical-align: text-top
    }
}

#contents .relateSec {
    margin-top: 70px
}

#contents .relateSec .relateList {
    display: flex;
    justify-content: space-between;
    padding: 25px 0 0px 0px;
    background: none
}

#contents .relateSec .relateList li {
    /*float:left;margin-left:17px*/
}

#contents .relateSec .relateList li p {
    text-align: center;
    font-size: 1.2rem;
    font-weight: bold;
    margin-bottom: 10px
}

#contents .relateSec .relateList li:first-child {
    margin-left: 0
}

#contents .relateSec .relateList li img {
    width: 130px
}

@media screen and (max-width:767px) {
    #contents .relateSec {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    #contents .relateSec .relateList {
        display: none;
    }

    #contents .relateSec .relateBox {
        overflow: hidden
    }

    #contents .relateSec .relateBox .bx-wrapper {
        padding: 20px 40px;
        background: #EEE;
        border: 0;
        box-shadow: none
    }

    #contents .relateSec .relateBox .bx-wrapper .bx-controls-direction a {
        width: 27px;
        height: 50px;
        margin-top: -25px
    }

    #contents .relateSec .relateBox .bx-wrapper .bx-prev {
        background: url(../img/common/btn_relate_prev_sp.png);
        -webkit-background-size: 27px 50px;
        background-size: 27px 50px;
        left: 0
    }

    #contents .relateSec .relateBox .bx-wrapper .bx-next {
        background: url(../img/common/btn_relate_next_sp.png);
        -webkit-background-size: 27px 50px;
        background-size: 27px 50px;
        right: 0
    }
}

#contents .contactBox {
    margin-top: 45px;
    position: relative
}

#contents .contactBox .btnList {
    position: absolute;
    bottom: 32px;
    left: 79px;
}

#contents .contactBox .btnList li {
    float: left
}

#contents .contactBox .btnList li:first-child img {
    width: 218px;
    margin-right: 8px;
}

#contents .contactBox .btnList li:last-child img {
    width: 166px;
}

@media screen and (max-width:767px) {
    #contents .contactBox {
        margin-top: 25px
    }

    #contents .contactBox .btnList {
        position: absolute;
        bottom: 3vw;
        left: 3vw;
    }

    #contents .contactBox .btnList li:first-child img {
        width: 33vw;
        margin-right: 1.8vw;
    }

    #contents .contactBox .btnList li:last-child img {
        width: 24.67vw;
    }
}

#contents .snsBox {
    display: flex;
    margin-top: 110px;
    padding: 0 15px
}

#contents .snsBox .ttl {
    margin-bottom: 10px;
    padding-left: 40px;
    font-size: 1.6rem;
    line-height: 32px
}

#contents .snsBox .twitter .ttl {
    background: url(../img/common/icon_twitter.png) no-repeat 0 0;
    -webkit-background-size: 32px 32px;
    background-size: 32px 32px
}

#contents .snsBox .facebook .ttl {
    background: url(../img/common/icon_facebook.png) no-repeat 0 0;
    -webkit-background-size: 32px 32px;
    background-size: 32px 32px
}

#contents .snsBox .instagram .ttl {
    background: url(../img/common/icon_instagram.png) no-repeat 0 0;
    -webkit-background-size: 32px 32px;
    background-size: 32px 32px
}

#contents .snsBox .ttl a {
    text-decoration: none
}

#contents .snsBox .twitter .ttl a {
    color: #3b94d9
}

#contents .snsBox .facebook .ttl a {
    color: #36589e
}

#contents .snsBox .instagram .ttl a {
    color: #6745cb
}

#contents .snsBox>div {
    width: 32%;
    margin-left: 2%
}

#contents .snsBox .twitter {
    margin-left: 0
}

#contents .snsBox .instagram .imageList {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

#contents .snsBox .instagram .imageList li {
    position: relative;
    width: 33%;
    margin-bottom: .3%;
}

#contents .snsBox .instagram .imageList li a:before {
    content: "";
    display: block;
    padding-top: 100%;
}

#contents .snsBox .instagram .imageList li:nth-child(3n+1) {
    margin-left: 0
}

#contents .snsBox .instagram .imageList li:nth-child(n+4) {
    margin-top: .5%
}

#contents .snsBox .instagram .imageList li img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    object-fit: cover;
}

#contents .snsBox .instagram .follow {
    margin-top: 10px;
    text-align: center
}

@media screen and (max-width:767px) {
    #contents .snsBox {
        display: block;
        margin-top: 20px
    }

    #contents .snsBox>div {
        width: 100%;
        margin: 0 0 40px;
        overflow: hidden
    }

    #contents .snsBox .ttl {
        font-size: 1.3rem;
        line-height: 24px
    }

    #contents .snsBox .twitter .ttl,
    #contents .snsBox .facebook .ttl,
    #contents .snsBox .instagram .ttl {
        -webkit-background-size: 24px 24px;
        background-size: 24px 24px
    }

    #contents .snsBox .twitter .twitterWrap {
        text-align: center
    }

    #contents .snsBox .facebook #facebookWrap {
        text-align: center
    }
}

#contents .pageTop {
    display: none
}

@media screen and (max-width:767px) {
    #contents .pageTop {
        display: block;
        text-align: center
    }

    #contents .pageTop a {
        display: inline-block;
        width: 257px;
        padding: 15px 0 13px;
        background: #001c5d;
        -webkit-border-radius: 30px;
        border-radius: 30px;
        color: #FFF;
        font-size: 1.6rem;
        font-weight: bold;
        text-decoration: none
    }
    .contact-frame #contents .pageTop {
        display: none;
    }
}

#cvBox {
    display: none
}

@media screen and (max-width:767px) {
  #cvBox {
    display: block;
    width: 100%;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 9999;
  }
  #cvBox ul {
    display: -webkit-flex;
    display: flex;
  }
  #cvBox ul li {
    width: 50%;
  }
}

footer {
    margin-top: 35px;
    padding: 10px 0 20px;
    background: #001c5d
}

footer .inner {
    width: 1000px;
    margin: 0 auto
}

footer .inner .footNav {
    text-align: center
}

footer .inner .footNav .spNav {
    display: none
}

footer .inner .footNav .clinicNav+.clinicNav {
    margin-top: 25px
}

footer .inner .footNav ul li {
    display: inline-block;
    color: #FFF;
    font-size: 1.3rem;
    line-height: 2.2
}

footer .inner .footNav ul li.ttl {
    margin-right: 10px
}

footer .inner .footNav ul li::after {
    content: "��";
    display: inline;
    margin: 0 10px 0 14px
}

footer .inner .footNav ul li:last-child::after,
footer .inner .footNav .clinicNav li.ttl::after {
    content: none
}

footer .inner .footNav .generalNav li:nth-child(4)::after,
footer .inner .footNav .generalNav li:nth-child(9)::after {
    content: "\A";
    margin: 0;
    white-space: pre
}

footer .inner .footNav ul li a {
    color: #FFF;
    text-decoration: none
}

footer .inner .footNav ul li a:hover {
    text-decoration: underline
}

footer .snsArea {
    display: table;
    margin: 35px auto 0;
}

.footerColumnSingle .snsArea {
    margin: 20px auto 0;
}

footer .snsArea li {
    width: 30px;
    margin: 0 10px;
    float: left;
}

footer .snsArea li img {
    width: 100%;
}

footer .snsArea li img:hover {
    opacity: 0.7;
}

footer .inner .logo {
    margin-top: 40px;
    text-align: center
}

footer .inner .copyRight {
    margin-top: 20px;
    color: #FFF;
    font-size: 1.3rem;
    text-align: center
}

@media screen and (max-width:767px) {
    footer {
        margin-top: 25px;
        padding: 0 0 10px
    }

    footer .inner {
        width: 100%
    }

    footer .inner .footNav .clinicNav,
    footer .inner .footNav .generalNav {
        display: none
    }

    footer .inner .footNav .spNav {
        display: block
    }

    footer .inner .footNav .spNav li {
        display: block;
        border-bottom: 2px solid #FFF;
        font-size: 1.7rem;
        line-height: 1.4;
        text-align: left
    }

    footer .inner .footNav ul li::after {
        content: none
    }

    footer .inner .footNav .spNav li a {
        display: block;
        padding: 20px 30px 20px 20px;
        position: relative
    }

    footer .inner .footNav .spNav li a::after {
        content: "";
        display: block;
        width: 17px;
        height: 25px;
        background: url(../img/common/arrow_foot01.png) no-repeat;
        -webkit-background-size: 17px 25px;
        background-size: 17px 25px;
        position: absolute;
        top: 50%;
        right: 10px;
        margin-top: -13px
    }

    footer .snsArea {
        margin: 30px auto 0;
    }

    .footerColumnSingle .snsArea {
        padding-top: 30px;
    }

    footer .snsArea li {
        width: 11vw;
        margin: 0 3vw;
    }

    footer .inner .logo {
        margin-top: 30px
    }

    footer .inner .logo img {
        width: 171px
    }

    footer .inner .copyRight {
        font-size: 1.1rem
    }
}

@media screen and (min-width:768px) {
    .opacity a:hover {
        opacity: .7
    }
}

#contents .pageTtl {
    padding: 11px 0 8px;
    background: #0a0f5f
}

#contents .pageTtl>span {
    display: block;
    width: 1000px;
    margin: 0 auto;
    color: #FFF;
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 1.4
}

#contents .headLine01 {
    padding: 10px 0 8px;
    background: #001c5d;
    color: #FFF;
    font-size: 2.6rem;
    font-weight: bold;
    text-align: center;
    line-height: 1.4
}

@media screen and (max-width:767px) {
    #contents .pageTtl {
        padding: 10px 10px
    }

    #contents .pageTtl>span {
        width: 100%;
        font-size: 1.8rem
    }

    #contents .headLine01 {
        padding: 6px 0;
        font-size: 1.6rem
    }

    #contents .headLine01 .pcSpace {
        display: none
    }
}

#contents .cmnBtn01 a {
    display: inline-block;
    width: 380px;
    padding: 18px 0 16px;
    background: #839dd1;
    -webkit-border-radius: 30px;
    border-radius: 30px;
    color: #FFF;
    font-size: 1.9rem;
    text-align: center;
    font-weight: bold;
    text-decoration: none
}

#contents .cmnMore01 {
    display: none
}

@media screen and (min-width:768px) {
    #contents .cmnBtn01 a:hover {
        opacity: .7
    }
}

@media screen and (max-width:767px) {
    #contents .cmnBtn01 a {
        width: 310px;
        padding: 14px 0;
        font-size: 1.6rem
    }

    #contents .cmnMore01 {
        display: block;
        text-align: center
    }

    #contents .cmnMore01 a {
        display: inline-block;
        width: 310px;
        padding: 14px 0;
        background: #d9d9d9;
        -webkit-border-radius: 30px;
        border-radius: 30px;
        font-size: 1.6rem;
        text-align: center;
        font-weight: bold;
        text-decoration: none;
        position: relative
    }

    #contents .cmnMore01 a::after {
        content: "";
        display: inline-block;
        width: 17px;
        height: 17px;
        background: url(../img/common/icon_more01_sp.png) no-repeat;
        -webkit-background-size: 17px 17px;
        background-size: 17px 17px;
        position: absolute;
        top: 50%;
        right: 20px;
        margin-top: -9px
    }

    #contents .cmnMore01.open {
        margin-right: 7px;
        text-align: right
    }

    #contents .cmnMore01.open a {
        width: auto;
        padding: 0 20px 0 0;
        border: 0;
        background: 0
    }

    #contents .cmnMore01.open a::after {
        background: url(../img/common/icon_more01_open_sp.png) no-repeat;
        -webkit-background-size: 17px 17px;
        background-size: 17px 17px;
        position: absolute;
        top: 50%;
        right: 0;
        margin-top: -8px
    }
}

#conts .prBanner {
    margin-top: 25px;
    padding: 17px 15px;
    background: #e4e4e4;
    -webkit-border-radius: 8px;
    border-radius: 8px
}

#conts .prBanner li {
    float: left;
    margin-left: 15px
}

#conts .prBanner li:first-child {
    margin-left: 0
}

@media screen and (max-width:767px) {
    #conts .prBanner {
        margin-top: 0;
        padding: 10px 10px;
        -webkit-border-radius: 0;
        border-radius: 0
    }

    #conts .prBanner li {
        width: 32%;
        margin-left: 2%
    }

    #conts .prBanner li:first-child {
        display: none
    }

    #conts .prBanner li:nth-child(2) {
        margin-left: 0
    }
}

#conts .cmnReport.graduate {
    margin-top: 10px
}

#conts .cmnReport.challenge {
    margin-top: 35px
}

#conts .cmnReport p {
    text-align: center
}

#conts .cmnReport .swiper-container {
    width: 969px;
    margin-top: 15px
}

#conts .cmnReport .swiper-container .swiper-button-prev,
#conts .cmnReport .swiper-container .swiper-button-next {
    width: 50px;
    height: 64px;
    background: 0;
    margin-top: -32px
}

#conts .cmnReport .swiper-container .swiper-button-prev {
    left: 7px
}

#conts .cmnReport .swiper-container .swiper-button-next {
    right: 7px
}

@media screen and (max-width:767px) {
    #conts .cmnReport.graduate {
        margin-top: 12px
    }

    #conts .cmnReport.challenge {
        margin-top: 20px
    }

    #conts .cmnReport p img {
        width: 248px
    }

    #conts .cmnReport .swiper-container {
        width: 100%;
        margin-top: 10px
    }

    #conts .cmnReport .swiper-container .swiper-button-prev,
    #conts .cmnReport .swiper-container .swiper-button-next {
        width: 25px;
        height: 32px;
        margin-top: -16px
    }

    #conts .cmnReport .swiper-container .swiper-button-prev {
        left: 5px
    }

    #conts .cmnReport .swiper-container .swiper-button-next {
        right: 5px
    }
}

#conts .cmnQa {
    margin-top: 35px;
    padding: 0 20px
}

#conts .cmnQa li:nth-child(odd) {
    clear: both;
    float: left
}

#conts .cmnQa li:nth-child(even) {
    float: right
}

#conts .cmnQa li:nth-child(n+3) {
    margin-top: 55px
}

@media screen and (min-width:768px) {
    #conts .cmnQa li a {
        display: block;
        width: 454px;
        height: 444px
    }

    #conts .cmnQa li:nth-child(1) a {
        background: url(../img/common/qa/img_qa01_hover.jpg) no-repeat
    }

    #conts .cmnQa li:nth-child(2) a {
        background: url(../img/common/qa/img_qa02_hover.jpg) no-repeat
    }

    #conts .cmnQa li:nth-child(3) a {
        background: url(../img/common/qa/img_qa03_hover.jpg) no-repeat
    }

    #conts .cmnQa li:nth-child(4) a {
        background: url(../img/common/qa/img_qa04_hover.jpg) no-repeat
    }

    #conts .cmnQa li:nth-child(5) a {
        background: url(../img/common/qa/img_qa05_hover.jpg) no-repeat
    }

    #conts .cmnQa li:nth-child(6) a {
        background: url(../img/common/qa/img_qa06_hover.jpg) no-repeat
    }

    #conts .cmnQa li a:hover img {
        visibility: hidden
    }
}

@media screen and (max-width:767px) {
    #conts .cmnQa {
        margin-top: 0;
        padding: 5px 10px 0
    }

    #conts .cmnQa li {
        float: none !important;
        margin-top: 20px !important
    }
}

.hover:hover {
    opacity: .7
}

#mv {
    width: 1140px;
    margin: 0 auto
}

#mv a img:hover {
    opacity: .7
}

#mv .lead {
    width: 100%;
    padding-top: 2px;
    background: url(../img/common/bg_mainvisual01.png) no-repeat center;
    color: #FFF;
    font-size: 1.5rem;
    font-weight: normal;
    text-align: center;
    line-height: 28px;
    position: absolute;
    bottom: 0
}

#mv .swiper-container {
    padding-bottom: 35px
}

#mv .swiper-button-next,
#mv .swiper-button-prev {
    width: 50px;
    height: 64px;
    margin-top: -50px;
    display: none
}

#mv .swiper-button-next {
    background: url(../img/common/report/btn_report_next.png) no-repeat
}

#mv .swiper-button-prev {
    background: url(../img/common/report/btn_report_prev.png) no-repeat
}

#mv .swiper-container-horizontal>.swiper-pagination-bullets,
#mv .swiper-pagination-custom,
#mv .swiper-pagination-fraction {
    bottom: 0
}

#mv .swiper-pagination-bullet {
    border: 2px solid #000;
    background: #fff;
    opacity: 1
}

#mv .swiper-pagination-bullet-active {
    background: #000
}

#mv .openText {
    width: 360px;
    color: #FFF;
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
    text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2), -2px -2px 2px rgba(0, 0, 0, 0.2);
    position: absolute;
    top: 350px;
    left: 30px
}

#mv .openText span {
    margin-right: 5px;
    color: #ffffbf;
    font-size: 3rem
}

@media screen and (max-width:767px) {
    #mv {
        width: 100%
    }

    #mv .lead {
        padding: 6px 0;
        background: #001c5d;
        font-size: 1.0rem;
        line-height: 1.4;
        position: static
    }

    #mv .swiper-button-next,
    #mv .swiper-button-prev {
        background-size: 100% auto;
        width: 9%;
        height: 100%;
        margin-top: -34px;
        display: block
    }

    #mv .swiper-button-next {
        right: 0
    }

    #mv .swiper-button-prev {
        left: 0
    }

    #mv .swiper-container-horizontal>.swiper-pagination-bullets,
    #mv .swiper-pagination-custom,
    #mv .swiper-pagination-fraction {
        bottom: 15px
    }

    #mv .openText {
        width: 47vw;
        font-size: 1vw;
        position: absolute;
        top: 49%;
        left: inherit;
        right: 1%
    }

    #mv .openText span {
        margin-right: 2px;
        font-size: 3.2vw
    }
}

@media screen and (max-width:350px) {
    #mv .openText {
        top: 49.5%
    }
}

@media screen and (max-width:335px) {
    #mv .openText {
        top: 49%
    }
}

.reservation_box {
    position: relative;
    margin-top: 40px
}

.reservation_box img {
    width: 100%
}

.reservation_box p {
    position: absolute;
    top: 24px;
    right: 200px;
    color: #fff;
    text-align: center;
    font-size: 24px;
    font-weight: bold
}

.reservation_box p span {
    font-size: 50px;
    line-height: 1.4em;
    color: #ffffbf
}

@media screen and (max-width:767px) {
    .reservation_box {
        position: relative;
        margin-top: 20px;
        margin-bottom: 20px
    }

    .reservation_box img {
        width: 100%
    }

    .reservation_box p {
        position: absolute;
        top: 18%;
        right: auto;
        width: 100%;
        color: #fff;
        text-align: center;
        font-size: 5vw
    }

    .reservation_box p span {
        font-size: 10vw;
        line-height: 1.4em;
        color: #ffffbf
    }
}

.renewal_box {
    position: relative;
    margin-top: 40px
}

.renewal_box img {
    width: 100%
}

.renewal_box p {
    position: absolute;
    top: 20px;
    right: 50px;
    color: #fff;
    text-align: center;
    font-size: 30px;
    line-height: 1.6em
}

.renewal_box p span {
    font-size: 50px;
    line-height: 1.4em;
    color: #ffffbf
}

.renewal_box p .text_day {
    font-size: 24px;
    line-height: 1.4em
}

.renewal_box p .main_text {
    font-size: 50px;
    line-height: 0
}

@media screen and (max-width:767px) {
    .renewal_box {
        position: relative;
        margin-top: 20px;
        margin-bottom: 20px
    }

    .renewal_box img {
        width: 100%
    }

    .renewal_box p {
        position: absolute;
        top: 18%;
        right: auto;
        width: 100%;
        color: #fff;
        text-align: center;
        font-size: 5vw
    }

    .renewal_box p span {
        font-size: 10vw;
        line-height: 1.4em;
        color: #ffffbf
    }

    .renewal_box p .main_text {
        font-size: 9vw;
        line-height: 0
    }

    .renewal_box p .text_day {
        font-size: 24px;
        line-height: 1.6em
    }
}

.renewal_map_box {
    display: flex;
    padding: 0 20px;
    margin: 40px 0
}

.renewal_map_box .renewal_map_img {
    width: 460px;
    margin-right: 40px
}

.renewal_map_box .renewal_map_info {
    width: 460px
}

.renewal_map_box .renewal_map_text {
    width: 100%;
    padding: 20px 0;
    text-align: center;
    font-size: 24px
}

.renewal_map_box .renewal_map_detail table {
    width: 100%
}

.renewal_map_box .renewal_map_detail td {
    font-size: 16px;
    padding: 5px 0
}

.renewal_map_box .renewal_map_detail .renewal_text01 {
    font-weight: bold
}

.renewal_map_box .renewal_map_detail .renewal_text01 span {
    color: #c30d23
}

.renewal_map_box .renewal_map_detail .renewal_text02 {
    font-weight: normal
}

.renewal_map_box .renewal_map_detail .renewal_text02 span {
    color: #c30d23
}

.renewal_map_box .renewal_map_detail .renewal_link {
    text-align: center
}

.renewal_map_box .renewal_map_detail {
    width: 420px;
    background-color: #efefef;
    padding: 20px
}

.renewal_map_box .renewal_map_arrow {
    margin: 20px auto;
    display: table
}

@media screen and (max-width:767px) {
    .renewal_map_box {
        display: inline-block;
        padding: 0;
        margin: 40px 0
    }

    .renewal_map_box .renewal_map_img {
        width: 95%;
        margin: 0 auto
    }

    .renewal_map_box .renewal_map_info {
        width: 100%
    }

    .renewal_map_box .renewal_map_text {
        width: 100%;
        padding: 20px 0;
        text-align: center;
        font-size: 24px
    }

    .renewal_map_box .renewal_map_detail table {
        width: 100%;
        padding: 20px
    }

    .renewal_map_box .renewal_map_detail td {
        font-size: 12px;
        padding: 5px 0
    }

    .renewal_map_box .renewal_map_detail .renewal_text01 {
        font-weight: bold
    }

    .renewal_map_box .renewal_map_detail .renewal_text01 span {
        color: #c30d23
    }

    .renewal_map_box .renewal_map_detail .renewal_text02 {
        font-weight: normal
    }

    .renewal_map_box .renewal_map_detail .renewal_text02 span {
        color: #c30d23
    }

    .renewal_map_box .renewal_map_detail .renewal_link {
        text-align: center
    }

    .renewal_map_box .renewal_map_detail {
        width: 92%;
        background-color: #efefef;
        padding: 0;
        margin: 0 auto
    }

    .renewal_map_box .renewal_map_arrow {
        margin: 20px auto;
        display: table
    }
}

#contents .contact-reexamination-pc a {
    display: block;
    text-align: right;
    margin: 20px 10px;
    font-size: 14px;
    font-weight: bold
}

#contents .contact-reexamination-sp a {
    display: none;
    text-align: right;
    margin: 20px 10px;
    font-size: 14px;
    font-weight: bold
}

.bn_online {
    text-align: center;
    width: 100%;
    margin-top: 4em
}

.bn_online img {
    margin: 0 auto
}

.bn_online img:hover {
    opacity: .7
}

#qaArea.qaList {
    padding: 0 20px
}

#qaArea.qaList li {
    width: 430px;
    margin-top: 65px
}

#qaArea.qaList li:nth-child(odd) {
    clear: both;
    float: left
}

#qaArea.qaList li:nth-child(even) {
    float: right
}

#qaArea.qaList li a {
    display: block;
    text-decoration: none
}

#qaArea.qaList li a:hover .ttlBox,
#qaArea.qaList li a:hover .summary {
    opacity: .7
}

#qaArea.qaList li a .ttlBox .question,
#qaArea.qaList li a .ttlBox .answer {
    font-size: 2.1rem;
    font-weight: bold;
    line-height: 1.3
}

#qaArea.qaList li a .ttlBox .question,
.q_font {
    color: #001d5d
}

.q_font {
    font-family: 'Ibarra Real Nova', serif;
    font-size: 41px;
    font-weight: 200;
    display: inline
}

.t_inde {
    text-indent: 40px;
    display: block
}

.a_font {
    font-family: 'Ibarra Real Nova', serif;
    font-size: 41px;
    font-weight: 200;
    display: inline !important;
    vertical-align: baseline !important;
    width: auto !important
}

#qaArea.qaList li a .ttlBox .answer {
    margin-top: 5px;
    color: #ea6b1c
}

#qaArea.qaList li a .ttlBox .question::before,
#qaArea.qaList li a .ttlBox .answer::before {
    content: "";
    display: inline-block;
    margin-right: 5px
}

#qaArea.qaList li a .ttlBox .question::before {
    vertical-align: middle
}

#qaArea.qaList li a .ttlBox .question span,
#qaArea.qaList li a .ttlBox .answer span {
    display: inline-block;
    width: 385px
}

#qaArea.qaList li a .ttlBox .question span {
    vertical-align: middle
}

#qaArea.qaList li a .ttlBox .answer span {
    vertical-align: text-top
}

#qaArea.qaList li a .imgBox {
    margin-top: 37px;
    text-align: center
}

#qaArea.qaList li:nth-child(2) a .imgBox {
    margin-top: 5px
}

#qaArea.qaList li a .summary {
    width: 381px;
    margin-top: 37px;
    padding-left: 25px;
    font-size: 1.7rem;
    line-height: 1.5
}

@media screen and (max-width:767px) {
    #contents .contact-reexamination-pc a {
        display: none
    }

    #contents .contact-reexamination-sp a {
        display: block
    }

    .bn_online {
        margin-top: 30px;
        padding: 0 10px;
        box-sizing: border-box
    }

    #qaArea.qaList li {
        float: none !important;
        width: 100%;
        margin-top: 25px;
        padding: 0 10px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box
    }

    #qaArea.qaList li a .ttlBox {
        float: right;
        width: 63%
    }

    #qaArea.qaList li a .ttlBox .question,
    #qaArea.qaList li a .ttlBox .answer {
        font-size: 1.4rem
    }

    #qaArea.qaList li a .ttlBox .question::before,
    #qaArea.qaList li a .ttlBox .answer::before {
        content: none
    }

    #qaArea.qaList li a .ttlBox .question span,
    #qaArea.qaList li a .ttlBox .answer span {
        width: auto
    }

    .q_font {
        font-size: 22px
    }

    .a_font {
        font-size: 22px
    }

    .t_inde {
        text-indent: inherit
    }

    #qaArea.qaList li a .imgBox {
        float: left;
        width: 33%;
        margin-top: 0 !important;
        text-align: left
    }

    #qaArea.qaList li a .summary {
        width: 100%;
        clear: both;
        margin-top: 0;
        padding: 10px 0 0 0;
        font-size: 1.4rem
    }
}

header .res-link-text {
    position: absolute;
    color: #fff;
    width: 382px;
    top: 90px;
    text-align: center;
    font-size: 14px;
    font-family: '繝偵Λ繧ｮ繝手ｧ偵ざ Pro W3', '繝偵Λ繧ｮ繝手ｧ偵ざ W3', '繝｡繧､繝ｪ繧ｪ', '�ｭ�ｳ �ｰ繧ｴ繧ｷ繝�け', sans-serif
}

header .res-link-text a {
    color: #fff
}

.modal {
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 999
}

.modal__bg {
    height: 100vh;
    position: absolute;
    width: 100%;
    background-color: rgba(0, 0, 0, 0.5)
}

.modal__cross {
    display: inline-block;
    width: 50px;
    height: 50px;
    top: -60px;
    right: 0;
    position: absolute;
    cursor: pointer;
    z-index: 9999
}

.modal__cross:before,
.modal__cross:after {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 84%;
    height: 16%;
    margin: -8% 0 0 -42%;
    background: #fff
}

.modal__cross:before {
    transform: rotate(-45deg)
}

.modal__cross:after {
    transform: rotate(45deg)
}

.modal__content {
    background-color: rgba(0, 0, 0, 0.7);
    left: 50%;
    padding: 20px;
    position: absolute;
    bottom: 60px;
    transform: translate(-50%, -50%);
    width: 85%;
    border-radius: 6px;
    display: flex;
    font-size: 3vw;
    font-family: '繝偵Λ繧ｮ繝手ｧ偵ざ Pro W3', '繝偵Λ繧ｮ繝手ｧ偵ざ W3', '繝｡繧､繝ｪ繧ｪ', '�ｭ�ｳ �ｰ繧ｴ繧ｷ繝�け', sans-serif;
    font-weight: bold
}

.modal__content .modal__contleft {
    background-color: rgba(255, 255, 255, 1);
    width: 48%;
    border-radius: 6px;
    text-align: center;
    color: #001c5d;
    padding: 20px 0;
    line-height: 1.5em
}

.modal__content .modal__contleft p {
    margin-bottom: 20px
}

.modal__content .modal__contleft a {
    color: #001c5d;
    font-size: 4vw;
    text-decoration: underline
}

.modal__content .modal__contright {
    background-color: rgba(255, 255, 255, 1);
    width: 48%;
    margin-left: 4%;
    border-radius: 6px;
    text-align: center;
    color: #001c5d;
    padding: 20px 0;
    line-height: 1.5em
}

.modal__content .modal__contright p {
    margin-bottom: 10px
}

.modal__content .modal__contright p a {
    color: #001c5d;
    text-decoration: underline
}

.modal__content .modal__contright img {
    width: 30vw
}

body.fixed {
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0
}

#cvBox button {
    background-color: transparent;
    border: 0;
    cursor: pointer;
    outline: 0;
    padding: 0;
    appearance: none
}

.m-8-a-0 {
    margin: 8rem auto 0
}

.m-2-a-0 {
    margin: 2rem auto 0
}

.m-1-a {
    margin: 1rem auto
}

.align-c {
    text-align: center
}

.bold {
    font-weight: bold
}

.f-16 {
    font-size: 16px
}

.red-01 {
    color: #a41a19
}

.orange-01 {
    color: #F63
}

/*2021/05/06霑ｽ險�*/

@media screen and (max-width:767px) {
  .partsTable_add{
    display: none;
  }
  .priceBox_spOnly_top{
  display: block;
  }
  .partsTable_add_sp{
  }
  .faceParts_sp{
  display: block;
  text-align: center;
  margin-top: 20px;
  }

  .spParts_menuimg{
    text-align: center;
    margin-top: 20px;
  }
  .spParts{
    display: none;
  }
    .inner .partsWrap .textBox {
    display: block;
    width: auto;
    margin: 0 auto;
    padding-top: 20px;
}
  
}

@media screen and (min-width:767px){
 .faceParts_sp{
  display: none;
  }
  .addTable{
    display: none;
  }
  .priceBox_spOnly_top{
  display: none;
}
  .partsTable_add_sp{
    display: none;
  }
  
}