@charset "utf-8";

#wrapper { overflow: hidden; }

.pc { display: none !important; }

.p_txt { font-size: 1.2rem; line-height: 1.6; font-weight: 400; }

.txt_bold { font-weight: 700; }

.txt_note { font-size: 0.9rem; }

@media (min-width: 769px) { .sp { display: none !important; }
  .pc { display: inline-block !important; }
  .block { display: block; }
  .inline { display: inline; }
  .inline-block { display: inline-block; }
  .u-target { -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; opacity: 1; display: inline-block; }
  .u-target:hover { opacity: 0.7; }
  .p_txt { font-size: 0.8rem; line-height: 1.6; } }

/*----------------------------------------------------------
    header
----------------------------------------------------------*/
#header .header_inner { -webkit-box-sizing: border-box; box-sizing: border-box; display: table; width: 100%; padding: 0 1rem; margin: 0 auto; }

#header .header_logo { display: table-cell; vertical-align: middle; width: 8.2rem; }

#header .header_logo img { width: 100%; }

#header .header_copy { display: table-cell; vertical-align: middle; padding: 1.2rem 1.3rem; }

#header .header_copy_txt { font-size: 1rem; line-height: 1.3; }

@media (min-width: 769px) { #header { position: absolute; top: 0; width: 100%; z-index: 1000; }
  #header .header_inner { max-width: 72rem; padding: 0;}
  #header .header_logo { width: 10.9rem; padding: 1.6rem 0 1rem; }
  #header .header_copy { padding: 2.3rem 0 1.9rem 0.95rem; }
  #header .header_copy_txt { font-size: 0.7rem; line-height: 1.6; } }

/*----------------------------------------------------------
    fv
----------------------------------------------------------*/
.bx-wrapper { -webkit-box-shadow: none; box-shadow: none; border: 0; max-width: 70rem !important; }
.fv_bxslider .box_txt { position: absolute; top: 0; left: 1rem; right: 1rem; height: 100%; }
.fv_slogan { padding: 2.3rem 0 3.1rem 0; }
.fv_slogan .p_txt { font-size: 1.25rem; line-height: 1.56; margin-bottom: 0.2rem; }
.fv .fv_sign { margin-left: auto; margin-right: 0; width: 10.05rem; }
.fv .fv_content { z-index: 1; position: absolute; top: 0; left: 0; width: calc(100% - 2rem); height: 100%; margin: 0 1rem; }
.fv .fv_content .fv_author { font-size: 1.2rem; line-height: 1.6; }
.fv .fv_item { position: relative; }
.fv .fv_item .fv_bottom { position: absolute; bottom: 0; left: 0; }
.fv .fv_item .fv_voice { width: 15rem; margin: 1.3rem 0 4rem; }
.fv .fv_item .item_title { width: 19.5rem; margin-bottom: 0.8rem; }
.fv .fv_item.item_right .fv_voice { margin-right: 0; margin-left: auto; }
.fv .fv_item.item_right .item_title { width: 18.5rem; }
.fv .fv_item.item_right .fv_content { width: calc(100% - 13.5rem); padding-left: 11.5rem; }
.fv .item_01 .item01_title { margin-bottom: 3rem; }
.fv .item_01 .fv_txt { margin-bottom: 1.6rem; }
.fv .item_01 .fv_txt .p_txt { font-size: 0.9rem; line-height: 2; }
.fv .item_01 .fv_bottom { margin: 0 2.85rem; }
.bx-wrapper .bx-controls-direction a { bottom: -3.25rem; width: 3.25rem; height: 3.25rem; background-size: 200%; }
.bx-wrapper .bx-prev { left: 0; }
.bx-wrapper .bx-next { background: url("../img/controls.png") no-repeat -3.25rem 0; right: 0; }
@media (min-width: 769px) { .fv .fv_item .fv_bottom { position: static; bottom: 0; left: 0; }
  .fv_bg { width: 1400px; margin: auto;}
  .fv .fv_content { width: 1400px; padding: 14.8% 3rem 0; }
  .fv .item_01 .item01_title { width: 29rem; margin-bottom: 1rem; }
  .fv .item_01 .fv_bottom { width: 17rem; margin: 0; }

  .fv .fv_item.item_right { padding-left: 0; }
  .fv .fv_item.item_right .fv_content { width: 1400px; padding: 14.8% 3rem 0; }
  .fv .fv_item.item_right .fv_voice { margin: 0 1.5rem 2.5rem; }
  .fv .fv_item.item_right .item_title { width: auto; }

  .fv .fv_item .fv_voice { margin: 0 1.5rem 2.5rem; }
  .fv .fv_item .fv_pc { padding-left: 10.15625%; }
  .fv .fv_item .fv_author { font-size: 1.1rem; font-weight: bold;}
  .fv .fv_item .item_title { width: auto; }
  .bx-wrapper { margin-bottom: 2.5rem; }
  .bx-wrapper .bx-pager {z-index: 51; position: absolute; right: 280px; bottom: 5rem; width: auto;}
  .bx-wrapper .bx-controls-direction a { bottom: 4.2rem; width: 2.4rem; height: 2.4rem; }
  .bx-wrapper .bx-prev { right: calc(9rem + 2.4rem); left: auto; }
  .bx-wrapper .bx-next { background: url("../img/controls.png") no-repeat -2.4rem 0; right: 9rem; } }

/*----------------------------------------------------------
    contact
----------------------------------------------------------*/
.cta { background: url("../img/cta_bg.jpg") repeat; background-size: 32rem; }
.cta_bg { background: url("../img/cta_bg02.png") no-repeat 0 1rem; background-size: 100% auto; }
.cta_header .logo { margin: 0 2rem 1.1rem; padding: 1.85rem 6.05625rem 1.65rem; border-bottom: 0.15rem solid #fff; }
.cta_header .cta_txt { text-align: center; font-size: 1.4rem; line-height: 1.6; font-weight: 700; color: #fff; margin-bottom: 1.65rem; }
.cta_btn { text-align: center; width: 26rem; margin: 0 auto; display: block; padding-bottom: 1.3rem; }
@media (min-width: 769px) {
    .cta_bg { background: url("../img/cta_bg02.png") no-repeat center 8px; background-size: 1062px auto; padding: 2.2rem 0 1.8rem 0; }
  .cta_header .logo { float: left; border-bottom: 0; text-align: right; width: 41.714286%; border-right: 0.15rem solid #fff; padding: 0 2.428571% 0 0; margin: 0; }
  .cta_header .cta_txt { float: left; text-align: left; width: 52.928571%; padding: 0.4rem  0 0 2.428571%; line-height: 1.4; margin: 0; }
  .cta_btn { width: 20rem; margin: 1.85rem auto 0; padding: 0; } }


/*----------------------------------------------------------
    stylist
----------------------------------------------------------*/
.header_bd_inner { position: relative; position: relative; text-align: center; }

.header_bd_inner:after { content: ''; display: block; border-top: 0.15rem solid #000; width: 100%; position: absolute; top: 0; left: 0; }

.header_bd_inner:before { content: ''; display: block; border-top: 0.15rem  solid #000; width: 100%; position: absolute; bottom: 0; right: 0; }

.header_bd_inner .header_txt { margin-bottom: 1.2rem; }

.header_bd_inner .p_txt { font-size: 1.3rem; line-height: 1.5; }

.header_bd_inner .p_txt02 { font-size: 1.9rem; }

.header_bd_inner .inner { padding: 2.5rem 0 1.5rem 0; position: relative; }

.header_bd_inner .inner:after { content: ''; display: block; border-left: 0.15rem  solid #000; height: 9.6rem; position: absolute; top: -1rem; left: 0; }

.header_bd_inner .inner:before { content: ''; display: block; border-left: 0.15rem  solid #000; height: 9.6rem; position: absolute; bottom: -1rem; right: 0; }

.stylist_header { margin: 2.6rem 0 4.2rem; }

.stylist_title { display: block; width: 16.7rem; margin-bottom: 1.7rem; }

.stylist_detail { margin-bottom: 2.4rem; }

.stylist_detail li { float: left; padding: 0 1.2rem 0 0; }

.stylist_detail li .big { font-size: 1.9rem; font-weight: 700; }

.stylist_detail li .bd { border-bottom: 0.15rem solid #a6aa9d; padding-bottom: 0.5rem; }

.stylist_detail li .txt { font-size: 1.2rem; line-height: 1.4; font-weight: 700; }

.stylist_bg .thub { margin: 1.4rem 1.75rem 1.8rem; }

.stylist_item { position: relative; margin: 0 -0.5rem 3rem; }

.stylist_item .stylist_title_txt { font-size: 1.5rem; line-height: 1.5; font-weight: 700; margin-bottom: 1rem; padding-left: 1.2rem; position: relative; }

.stylist_item .stylist_title_txt:after { content: ''; display: block; width: 2.25rem; border-top: 0.15rem solid #000; position: absolute; left: -2.2rem; top: 1.1rem; }

.stylist_item .big { font-weight: 700; }

.stylist_item .stylist_bd { border: 0.15rem solid #000; position: relative; z-index: 100; padding: 2.8rem 1.5rem; }

.stylist_item .stylist_bd .p_txt { line-height: 1.7; }

.stylist_item .img_author { width: 13.7rem; height: 22.9rem; position: absolute; z-index: 10; top: -0.8rem; right: -0.75rem; }

@media (min-width: 769px) { .header_bd_inner .inner { width: 30rem; padding: 2.6rem 0 1.5rem; }
  .stylist_header { position: relative; margin: 4.1rem 0 4.5rem; }
  .stylist_header:after { content: ''; display: block; border-top: 0.15rem solid #000; width: calc((100% - 70rem) / 2 + 55rem); position: absolute; top: 0; left: 0; }
  .stylist_header:before { content: ''; display: block; border-top: 0.15rem  solid #000; width: calc((100% - 70rem) / 2 + 55rem); position: absolute; bottom: 0; right: 0; }
  .stylist_title { display: table-cell; vertical-align: top; }
  .stylist_detail { display: table-cell; vertical-align: middle; padding-left: 1.7rem; }
  .stylist_detail li:last-child { padding-right: 0; }
  .stylist_detail li .txt { font-size: 1.1rem; line-height: 2rem; }
  .stylist_top { display: table; margin: 0 0 2.7rem; }
  .stylist_item { margin: 0 0 5.25rem; }
  .stylist_item .stylist_bd { padding: 1.8rem 38.4615% 0 1.5rem; }
  .stylist_item .stylist_bd .p_txt { font-size: 16px; }
  .stylist_item .stylist_bd .p_txt.size_s { font-size: 14px; }
  .stylist_item .stylist_title_txt { padding: 0 0 0 3rem; font-size: 22px; margin-bottom: 0.8rem; }
  .stylist_item .stylist_title_txt:after { left: 0; top: 0.9rem; }
  .stylist_item .img_author { width: 23rem; right: -4rem; height: auto; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }
  .stylist_box { margin: 1.25rem 0 2.3rem 0.3rem; }
  .stylist_box .thub { float: left; width: 55.8528%; margin: 0; }
  .stylist_box .stylist_right { float: left; width: calc(44.1471% - 1rem); padding-left: 1rem; } }

/*----------------------------------------------------------
    voice
----------------------------------------------------------*/
.voice { background: #f5f6f8; }

.voice_bg .inner { background: url("../img/voice_bg.png") no-repeat top left; background-size: 8.8rem  auto; margin: 0; padding: 0 1rem; }

.voice_bg02 { background: #fff; overflow: hidden; }

.voice_header { padding: 2.5rem 0 1.7rem; border-bottom: 0.15rem solid #000; }

.voice_header_left { float: left; width: 6.5rem; }

.voice_header_right { float: left; width: calc(100% - 6.5rem); }

.voice_content { padding: 1.6rem 0 1.7rem; }

.voice_content .p_txt { margin-bottom: 2.1rem; line-height: 1.65; }

.voice_content .voice_thub { margin-bottom: 2.5rem; }

.voice_item { padding-top: 1.55rem; position: relative; }

.voice_item:after { content: ''; display: block; width: 200%; border-bottom: 0.25rem solid #001a3a; -webkit-transform: rotate(-40deg); -ms-transform: rotate(-40deg); transform: rotate(-40deg); position: absolute; top: 45%; left: -50%; }

.voice_item_header { background: url("../img/voice_header_item.png") no-repeat center; background-size: cover; text-align: center; padding: 0.5rem 0 0.75rem; margin-bottom: 0.5rem; position: relative; z-index: 1000; }

.voice_item_header .txt { font-size: 1.7rem; color: #fff; line-height: 1.4; }

.voice_item_box { border: 0.15rem solid #001a3a; padding: 2rem 1.5rem 0.5rem 1.5rem; position: relative; z-index: 100; background: #fff; }

.voice_item_box li { float: left; width: calc(50% - 1.5rem); padding-left: 1rem; position: relative; height: 3.9rem; }

.voice_item_box li:nth-child(2n + 2) { margin-left: 1rem; }

.voice_item_box li:after { content: ''; display: inline-block; width: 0.3rem; height: 0.3rem; background: #001a3a; position: absolute; top: 0.7rem; border-radius: 50%; left: 0.25rem; }

.voice_item_box li .p_txt { font-size: 1.3rem; font-weight: 700; line-height: 1.4; }

.voice_item_txt { position: relative; z-index: 100; padding: 1.5rem 0 2.3rem 5rem; }

@media (min-width: 769px) { .voice { background: #f5f6f8; }
  .voice_bg .inner { background: url("../img/voice_bg_pc.png") no-repeat 3rem 0; background-size: 12.7rem  auto; width: 52rem; max-width: calc(100% - 2rem); margin: 0 auto; }
  .voice_bg02 { padding-bottom: 2.9rem; }
  .voice_header { padding: 4.7rem 0 2.9rem; }
  .voice_header_left { width: 34.6153%; }
  .voice_header_right { width: 65.3846%; }
  .voice_header_right .txt { font-size: 1.3rem; }
  .voice_header_right .txt02 { font-size: 0.8rem; }
  .voice_header_txt { font-size: 1.6rem; }
  .voice_content { text-align: justify; position: relative; padding: 1.8rem 21.5rem 2.2rem 0; }
  .voice_content .p_txt { margin-bottom: 1.4rem; }
  .voice_content .voice_thub { position: absolute; top: 2.4rem; width: 39rem; right: -19.6rem; margin: 0; z-index: 1000; }
  .voice_item { padding-top: 7.9rem; }
  .voice_item_header { padding: 1.3rem 0 1.05rem; }
  .voice_item_header .txt { font-size: 1.5rem; }
  .voice_item_box { border: 0; margin-bottom: 2rem; padding: 2.3rem 1.45rem 1.2rem 2.75rem; position: relative; }
  .voice_item_box:before { content: ''; display: block; background: url(../img/concept_box_pc.png) no-repeat; background-size: cover; width: 100%; height: 2rem; position: absolute; bottom: -2rem; left: 0; }
  .voice_item_box li { width: 28.4912%; padding: 0; height: auto; margin: 0 0 1rem 4.8387%; }
  .voice_item_box li .p_txt { font-size: 1.2rem; }
  .voice_item_box li:after { width: 1.5rem; border-radius: 0; left: -2.25rem; top: 0.8rem; height: 0.15rem; }
  .voice_item_box li:nth-child(2n + 2) { margin: 0 0 1rem 4.8387%; }
  .voice_item_txt { padding: 0 0 0 36%; }
  .voice_item_txt .p_txt { line-height: 2; } }

/*----------------------------------------------------------
    concept
----------------------------------------------------------*/
.concept_bg { background: #f5f6f8; padding-bottom: 2.75rem; }

.concept_header { padding: 11.7rem 0 20.4rem 0; background: url("../img/concept_header_bg.jpg") no-repeat top center; background-size: 100%; }

.concept_header_txt .img { width: 23.35rem; display: inline-block; margin-bottom: 1rem; }

.concept_header_txt .txt { font-size: 1.9rem; color: #fff; line-height: 1.4; font-weight: bold;}

.concept_header_txt:after { content: ''; display: block; width: 3.8rem; margin: 0.5rem 0 0 0; border-bottom: 0.15rem solid #a6aa9d; }

.concept_box { padding: 1.4rem 1.2rem; -webkit-box-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.2); box-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.2); margin-bottom: 2rem; margin-top: -18.7rem; background: #fff; position: relative; }

.concept_box:after { content: ''; display: block; background: url("../img/concept_box.png") no-repeat; background-size: cover; width: 100%; height: 2rem; position: absolute; bottom: -2rem; left: 0; }

.concept_box_title { text-align: center; padding: 1.3rem 2rem; position: relative; margin-bottom: 1.5rem; }

.concept_box_title:before { content: ''; display: block; width: 2.15rem; height: 6.9rem; background: url("../img/concept_box_header01.png") no-repeat; background-size: 2.15rem; position: absolute; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); left: 0; }

.concept_box_title:after { content: ''; display: block; width: 2.15rem; height: 6.9rem; background: url("../img/concept_box_header02.png") no-repeat; background-size: 2.15rem; position: absolute; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); right: 0; }

.concept_box_txt { font-size: 1.5rem; line-height: 1.45; font-weight: 700; }

.concept_box_content { text-align: center; padding: 0 0.5rem; }

.concept_box_content .p_txt { margin-bottom: 1.5rem; line-height: 1.6; }

.concept_box02 .concept_bland { border: 0.15rem solid #001a3a; padding: 2rem 0.35rem 1rem; margin: 0 -0.5rem 1rem; background: #fff; }

.concept_box02 .concept_bland_title { text-align: center; margin-bottom: 0.9rem; }

.concept_box02 .concept_bland_title .img { display: inline-block; width: 19.7rem; margin-bottom: 0.6rem; }

.concept_box02 .concept_bland_title .txt { font-size: 1.3rem; line-height: 1.6; font-weight: 700; }

.concept_txt { padding: 0 0.5rem; }

.concept_txt .left { float: left; width: 50%; }

.concept_txt .right { float: left; width: 14rem; position: relative; right: -2rem; }

@media (min-width: 769px) { .concept_bg { background: #f5f6f8; padding-bottom: 4rem; }
  .concept_header { background: url("../img/concept_header_bgpc.jpg") no-repeat top center; background-size: cover; padding: 16rem 0 17.5rem 0; }
  .concept_header_txt:after { content: none; }
  .concept_header .img { margin-bottom: 0; vertical-align: bottom; display: inline-block; }
  .concept_header .txt { display: inline-block; position: relative; padding-left: 1.5rem; }
  .concept_header .txt:after { content: ''; display: block; width: 3.75rem; border-bottom: 0.15rem solid #a6aa9d; }
  .concept_box { text-align: center; margin-bottom: 3rem; margin-top: -15.8rem; }
  .concept_box:after { height: 3rem; bottom: -3rem; background: url("../img/concept_box_pc02.png") no-repeat center top; background-size: 100%; }
  .concept_box_title { display: inline-block; padding: 1.4rem 4rem; }
  .concept_box_title:after, .concept_box_title:before { height: 5rem; background-size: auto 100%; }
  .concept_box_title .pc { display: inline-block; }
  .concept_box_content .p_txt { line-height: 1.9; }
  .concept_box02 { position: relative; padding-top: 1.65rem; }
  .concept_box02 .concept_bland { position: relative; z-index: 1000; width: 30.4rem; margin: 0 0 1rem; }
  .concept_box02 .left { width: 52%; padding-left: 1rem; }
  .concept_box02 .left .p_txt { font-size: 0.9rem; line-height: 1.75; }
  .concept_box02 .right { width: 26.9rem; position: absolute; top: 0; right: -5rem; } }

/*----------------------------------------------------------
    change
----------------------------------------------------------*/
.change_header { padding: 5.2rem 0 18.7rem 0; background: url("../img/change_header_bg.jpg") no-repeat top center; background-size: 100%; position: relative; }

.change_header:after { content: ""; display: block; width: 1.35rem; height: 4.55rem; background: url("../img/change_next.png") no-repeat; background-size: 100%; position: absolute; top: 0; left: 50%; -webkit-transform: translate(-50%, -1.2rem); -ms-transform: translate(-50%, -1.2rem); transform: translate(-50%, -1.2rem); z-index: 1000; }

.change_header_txt { text-align: center; padding-bottom: 0.5rem; }

.change_header_txt .img { width: 26.6rem; display: inline-block; margin-bottom: 0.5rem; }

.change_header_txt .txt { font-size: 1.7rem; color: #fff; line-height: 1.4; font-weight: bold;}

.change_lst { margin-top: -17.1rem; }

.change_lst_item { margin-bottom: 2.25rem; }

.change_lst_item .thub { position: relative; margin-bottom: 0.85rem; }

.change_lst_item .after { padding: 0 2.65rem 0; }

.change_lst_item .after:after { content: ''; display: block; width: 8.5rem; height: 2.25rem; background: url("../img/chang_after.png") no-repeat center; background-size: 100%; position: absolute; top: 4.4rem; right: 0; }

.change_lst_item .before { width: 7.9rem; height: 9.1rem; position: absolute; bottom: 0; left: 0; }

.change_lst_item .before:before { content: ''; display: block; width: 9.1rem; height: 1rem; background: url("../img/chang_before.png") no-repeat; background-size: 100%; margin-bottom: 1rem; }

.change_lst_item .detail .title { background: #f5f6f8; text-align: center; margin: 0 0 0.75rem 8.4rem; }

.change_lst_item .detail .copy { font-size: 1.1rem; font-weight: 700; line-height: 2; color: #001a3a; }

.change_lst_item .sticker { float: left; width: 9.5rem; text-align: right; }

.change_lst_item .sticker .txt { font-size: 1.3rem; font-weight: bold; color: #fff; display: inline-block; padding: 1rem 1.75rem 1rem 1.25rem; background: url("../img/change_sticker.png") no-repeat; background-size: 100%; }

.change_lst_item .cotent { float: left; padding-left: 1rem; padding-top: 0.5rem; width: 17rem; }

.change_lst_item .cotent .p_txt { font-size: 1.1rem; line-height: 1.5; }

@media (min-width: 769px) { .change .change_header { background: url("../img/change_header_pc.png") no-repeat center top; background-size: cover; padding: 5.6rem 0 10rem 0; }
  .change .change_header_txt .img { width: 100%; margin-bottom: 0.9rem; }
  .change_lst { margin: -6.2rem -2.5rem 2.5rem; }
  .change_lst_item { width: 50%; clear: both; float: left; }
  .change_lst_item:nth-child(2n + 2) { clear: none; margin-top: 3rem; margin-bottom: 0; }
  .change_lst_item .before { width: 26.31578947368421%; height: 49.5%; bottom: -1.75rem; }
  .change_lst_item .before:before { width: 121.3333333333333%; height: 11.63%; margin-bottom: 11.63%; }
  .change_lst_item .detail .copy { font-size: 0.8rem; }
  .change_lst_item .detail .title { text-align: left; padding-left: 2.2rem; margin-right: 2.65rem; }
  .change_lst_item .cotent { padding-right: 2.65rem; width: calc(100% - 13.15rem); }
  .change_lst_item .cotent .p_txt { font-size: 0.7rem; } }


/*----------------------------------------------------------
    sevrive
----------------------------------------------------------*/
.service_header { margin: 2.7rem 0; }

.service_header .inner { padding: 1.35rem 0 1.5rem; }

.service_header .inner .header_txt { margin-bottom: 0.5rem; }

.service_box01 .top { margin-bottom: 1rem; }

.service_box01 .btn { border: 0.15rem solid #001a3a; text-align: center; padding: 1.3rem 0; margin: 0 3.9rem 1.8rem; position: relative; }

.service_box01 .btn:after { content: ''; display: block; height: 1.6rem; border-right: 0.15rem solid #001a3a; position: absolute; bottom: -0.9rem; left: 50%; }

.service_box01 .btn .txt { font-size: 1.5rem; line-height: 1.5; font-weight: 700; color: #001a3a; }

.service_box01 .slogan { text-align: center; }

.service_box01 .lst { padding: 3.1rem 0 5.1rem 0; position: relative; }

.service_box01 .lst:before { content: ""; display: block; width: 100%; height: 6.2rem; background: url(../img/service_bg.png) no-repeat top center; background-size: 28.7rem; position: absolute; top: 0; left: 0; }

.service_box01 .item { position: relative; z-index: 1000; margin-bottom: -4.2rem; }

.service_box01 .item_box { float: left; width: 14.7rem; height: 14.25rem; background: url("../img/service_box_bg.png") no-repeat; background-size: 100% auto; text-align: center; padding: 3.1rem 0 0; }

.service_box01 .item_box .service_number { width: 5rem; display: inline-block; margin-bottom: 1.6rem; }

.service_box01 .item_box .title { color: #fff; font-size: 1rem; line-height: 1.6; }

.service_box01 .item_box .txt_bold { display: block; font-size: 1.7rem; font-weight: 700; }

.service_box01 .item_txt { float: left; width: calc(100% - 15.7rem); padding: 0.4rem 0 0 1rem; }

.service_box01 .item_txt .p_txt.txt_bold, .service_box01 .item_txt .txt_bold { font-size: 1.15rem; }

.service_box01 .item_txt .p_txt { font-size: 0.9rem; }

.service_box01 .item:nth-child(1) .item_txt { padding: 4.6rem 0 0 1rem; }

.service_box01 .item:nth-child(2) .item_box { float: right; }

.service_box01 .item:nth-child(2) .item_txt { padding: 0.4rem 0 0 0; width: calc(100% - 14.7rem); }

.service_section .service_header02 { padding: 1.7rem 0 1.6rem; position: relative; }

.service_section .service_header02:after { content: ""; display: block; width: 100%; height: 100%; margin-right: 1rem; position: absolute; background: url("../img/service_header_bg.png") no-repeat center; background-size: auto 100%; top: 0; right: 0; }

.service_section .service_header02 .inner { position: relative; z-index: 100; }

.service_section .service_header02 .number { display: inline-block; width: 12.05rem; margin-bottom: 1.2rem; }

.service_section .header_txt { font-size: 1.8rem; font-weight: 700; color: #fff; line-height: 1.4; }

.service_section .service_content { padding: 1.5rem 0 1rem; }

.service_section .service_content .p_txt { margin-bottom: 2.2rem; line-height: 1.65; }

.service_check { border: 0.15rem  solid #001a3a; position: relative; margin-bottom: 3rem; }

.service_check:after { content: ''; display: block; width: 100%; height: 2rem; background: url("../img/concept_box.png") no-repeat; background-size: 100%; position: absolute; bottom: -2rem; }

.service_check .check { display: table; width: 100%; }

.service_check .check_title { display: table-row; }

.service_check .check_title .left { display: table-cell; vertical-align: middle; width: 4.5rem; padding: 0 0.9rem; background: url("../img/voice_header_item.png") no-repeat center; background-size: auto 100%; }

.service_check .check_copy { display: table-cell; vertical-align: middle; padding: 0.375rem 1rem; font-size: 1.6rem; line-height: 1.4; }

.service_check .check_lst { display: table; width: calc(100% - 1.75rem); border-top: 0.15rem  solid #001a3a; padding: 1.25rem 0.75rem 0.45rem 1rem; }

.service_check .check_lst .thub { display: table-cell; padding: 0 1rem 1rem 0; width: 15rem; vertical-align: top; }

.service_check .check_lst .check_txt { display: table-cell; vertical-align: middle; position: relative; }

.service_check .check_lst .p_txt { line-height: 1.45; font-size: 1.15rem; margin-bottom: 1rem; }

.service_check .check_lst .p_txt:before { content: ""; display: block; width: 3rem; margin-bottom: 0.25rem; border-top: 0.15rem solid #001a3a; position: absolute; top: 0; left: 0; }

.section_thub { margin: 1.5rem 0 2.5rem; }

@media (min-width: 769px) { .service_header { margin: 3.9rem 0 3.7rem; }
  .service_box01 .top { margin-bottom: 1.3rem; }
  .service_box01 .btn { width: calc(42.5% - 0.3rem); float: left; margin: 0 4% 0 0; }
  .service_box01 .btn:before { content: ''; display: block; width: 2.7rem; border-bottom: 0.15rem solid #001a3a; position: absolute; bottom: 50%; right: -1.35rem; }
  .service_box01 .btn:after { content: none; }
  .service_box01 .slogan { width: 53.5%; float: left; text-align: left; }
  .service_box01 .slogan .p_txt { font-size: 1rem; }
  .service_box01 .lst { padding: 4.2rem 0.25rem 3.6rem; }
  .service_box01 .lst:before { height: 7.5rem; background-size: 35rem; }
  .service_box01 .item { position: relative; z-index: 1000; float: left; width: calc((100% / 3) - 1.5rem); margin: 0 0.75rem; }
  .service_box01 .item_box { float: none; padding: 56.5% 0; height: 0; width: 100%; }
  .service_box01 .item_box .title_box { position: relative; top: -5rem; }
  .service_box01 .item_box .service_number { margin-bottom: 1.8rem; }
  .service_box01 .item_txt { float: none; width: 100%; padding: 0; text-align: center; }
  .service_box01 .item_txt .p_txt { font-size: 14px; white-space: nowrap;}
  .service_box01 .item_txt .p_txt.txt_bold,
  .service_box01 .item_txt .txt_bold { font-size: 16px; font-weight: 700; }
  .service_box01 .item:nth-child(1) .item_txt { padding: 0; }
  .service_box01 .item:nth-child(2) .item_box { float: none; }
  .service_box01 .item:nth-child(2) .item_txt { padding: 0; width: 100%; }
  .service_section .service_content { margin-right: 440px; }
  .service_section .service_header02 { display: table; width: 100%; padding: 1.3rem 0 1.1rem; }
  .service_section .service_header02:after { width: calc(((100% - 52rem)/ 2) + 52rem); margin-right: 0; max-width: calc(100% - 1rem); left: 0; }
  .service_section .service_header02 .number { display: table-cell; vertical-align: middle; padding-right: 0.75rem; }
  .service_section .service_header02 .header_txt { display: table-cell; vertical-align: middle; font-size: 1.6rem; }
  .service_check { margin-bottom: 4rem; }
  .service_check:after { background: url(../img/concept_box_pc.png) no-repeat; background-size: 100%; }
  .service_check .check_copy { padding: 1.5rem 2rem; }
  .service_check .check_lst { width: calc(100% - 5rem); padding: 1.5rem 2.5rem 1rem; }
  .service_check .check_lst .item { width: 33.333%; float: left; margin-bottom: 1.5rem; }
  .service_check .check_lst .item .thub { width: auto; padding: 0 0.75rem 0 0; display: block; }
  .service_check .check_lst .item .check_txt { display: block; padding: 0.5rem 0.75rem 0 0.75rem; margin-left: 2rem; border-left: 0.15rem solid #001a3a; }
  .service_check .check_lst .p_txt { font-size: 0.8rem; font-weight: 700; margin-bottom: 0; }
  .service_check .check_lst .p_txt:before { content: none; }
  .section_thub { position: absolute; top: 0; right: -8rem; margin-top: 2rem; }
  .service_section .service_content { padding: 2rem 0 1.5rem; }
  .service_section .service_content .p_txt { margin-bottom: 1.65rem; } }


/*----------------------------------------------------------
    voice
----------------------------------------------------------*/
.voice02 { padding: 2rem 0 0 0; }

.voice02_header { padding-top: 1.25rem; }

.voice02_header .left { display: inline-block; width: 14.5rem; margin-bottom: 1.5rem; }

.voice02_header .right:after { content: ""; display: block; width: 3.75rem; margin: 0.6rem 0 2rem; border-bottom: 0.15rem solid #a6aa9d; }

.voice02_header .right_txt { font-size: 1.9rem; line-height: 1.2; font-weight: 700; }

.voice02_content .item_box { position: relative; margin-bottom: 3rem; }

.voice02_content .item_box .item_box_cont { border: 0.15rem solid #000; padding: 1.5rem 1.5rem 3.5rem 1.3rem; position: relative; z-index: 1000; }

.voice02_content .item_box .number { display: inline-block; width: 15rem; margin-bottom: 2.1rem; }

.voice02_content .item_box .title { font-size: 1.3rem; font-weight: 700; line-height: 1.4; display: inline-block; border-bottom: 0.2rem solid #001a3a; padding: 0 0 0.9rem 0; margin-bottom: 0.5rem; }

.voice02_content .item_box .author { font-size: 1.2rem; line-height: 1.6; font-weight: 700; }

.voice02_content .item_box .img { position: absolute; bottom: -1.5rem; right: -1rem; width: 22.3rem; }

.voice02_content .inner .btn { padding: 0 4.925rem; margin-bottom: 1.5rem; }

.voice02_content .inner .btn .on { display: block; }

.voice02_content .inner .btn .off { display: none; }

.voice02_content .inner.open .btn .on { display: none; }

.voice02_content .inner.open .btn .off { display: block; }

.voice02_content .item01 .item_cnt { background: #f1f9f8; }

.voice02_content .item02 .item_cnt { background: #ebebe1; }

.voice02_content .item03 .item_cnt { background: #f0f0e8; }

.voice02_content .item_cnt { margin: 0 -1rem; padding: 2rem 1rem; }

.voice02_content .item_cnt .p_txt { margin-bottom: 1rem; }

.voice02_content .item_cnt .img01 { width: 13rem; float: right; margin-top: -2rem; margin-right: -1rem; }

.voice02_content .item_cnt .img01.wbig { width: 16.6rem; margin-left: -3.6rem; }

.voice02_content .title_txt { font-size: 1.5rem; font-weight: 700; line-height: 1.6; margin-bottom: 0.7rem; position: relative; white-space: nowrap;}

.voice02_content .title_txt.bd_top:before { content: ''; display: block; width: 3.5rem; border-top: 0.05rem solid #000; margin: 2rem 0 1.5rem; }

.voice02_content .after_before { width: 24.8rem; margin: 2rem auto 1rem; }

@media (min-width: 769px) { .voice02 { padding: 3.3rem 0 0 0; }
  .voice02_header { display: table; width: 100%; margin-bottom: 2.7rem; }
  .voice02_header .left { display: table-cell; padding-right: 1.9rem; }
  .voice02_header .right { display: table-cell; vertical-align: bottom; }
  .voice02_header .right:after { margin-bottom: 0.25rem; }
  .voice02 .item_box { margin-right: 1rem; margin-bottom: 4.2rem; }
  .voice02 .item_box .item_box_cont { padding-bottom: 3.3rem; }
  .voice02 .item_box .number { display: block; margin-bottom: 4rem; }
  .voice02 .item_box .title { display: inline-block; }
  .voice02 .item_box .img { width: 29.8rem; bottom: -1rem; }
  .voice02 .item01 .item_cnt { background: url("../img/voice_img01_pc.jpg") no-repeat center top / cover; }
  .voice02 .item02 .item_cnt { background: url("../img/voice_img02_pc.jpg") no-repeat center top / cover; }
  .voice02 .item03 .item_cnt { background: url("../img/voice_img03_pc.jpg") no-repeat center top / cover; }
  .voice02_content .inner .btn { padding: 0; width: 14.8rem; margin: 0 auto 2.9rem; }
  .voice02_content .item_txt { padding-right: 30%; }
  .voice02_content .item_txt .p_txt { font-size: 14px;}
  .voice02_content .item_cnt { margin: 0; padding: 4.2rem 0 0.75rem; }
  .voice02_content .item_cnt .title_txt { margin-bottom: 1rem; }
  .voice02_content .item_cnt .img01 { display: none; } }

/*----------------------------------------------------------
    folow
----------------------------------------------------------*/
.flow { margin-top: 0.5rem; }

.flow_bg { padding: 3.75rem 0 0 0; background: #f5f6f8; }

.flow_header:after { content: ""; display: block; width: 3.75rem; margin-bottom: 2.5rem; border-bottom: 0.15rem solid #a6aa9d; }

.flow_header .left { width: 13.2rem; margin-bottom: 1.3rem; }

.flow_header .right .right_txt { font-size: 1.9rem; line-height: 1.3; font-weight: 700; }

.flow_story { padding-left: 1rem; }

.flow_story .item { position: relative; }

.flow_story .item:last-child .content:before { content: none; }
.flow_story .item:last-child .content:after { height: 7.4rem; }
.flow_story .item:last-child .title { position: relative; }
.flow_story .thub { width: 11.628rem; position: absolute; top: 0; left: 0; z-index: 1000; }
.flow_story .content { padding-bottom: 2rem; position: relative; }
.flow_story .content:after { content: ''; display: block; height: 100%; border-left: 0.1rem solid #001a3a; position: absolute; top: 0; left: -0.7rem; }
.flow_story .content:before { content: ''; display: block; width: 0.7rem; height: 0.8rem; position: absolute; bottom: 0; left: -1rem; background: url("../img/flow_arow.png") no-repeat; background-size: 100%; }
.flow_story .title { font-size: 1.5rem; font-weight: 700; color: #fff; height: 7.35rem; -webkit-box-sizing: border-box; box-sizing: border-box; background: #001a3a; margin-bottom: 1rem; padding: 2.925rem 0 2.925rem 13.3rem; }
.flow_story .p_txt { margin-bottom: 1rem; }

@media screen and (min-width: 769px) and (-ms-high-contrast: active), (min-width: 769px) and (-ms-high-contrast: none) {
    .flow_story .content:after { height: 240px; top: 0; bottom: auto; }
 }

@media (min-width: 769px) {
  .flow { margin-top: 0; }
  .flow_header { display: table; margin-bottom: 3rem; }
  .flow_header:after { content: none; }
  .flow_header .left { display: table-cell; vertical-align: bottom; padding-right: 1.5rem; }
  .flow_header .right { display: table-cell; vertical-align: bottom; }
  .flow_header .right:after { content: ""; display: block; width: 3.75rem; margin: 0.5rem 0 0 0; border-bottom: 0.15rem solid #a6aa9d; }
  .flow_story { display: table; padding-bottom: 2rem; padding-left: 0;}
  .flow_story .p_txt { font-size: 0.7rem; }
  .flow_story .item { display: table-row; }
  .flow_story .item:last-child .title:after { height: 11rem; left: -0.55rem; }
  .flow_story .thub { padding-bottom: 1rem; display: table-cell; position: static; vertical-align: top; width: 17.5rem; }
  .flow_story .content { padding-bottom: 1rem; padding-left: 1rem; display: table-cell; vertical-align: top; }
  .flow_story .content .title { padding: 0.85rem 1rem; font-size: 1.2rem; height: auto; }
  .flow_story .content .p_txt { margin: 27px 0 0 29px;}
  .flow_story .content .p_txt.txt_note { margin-top: 0;}
  .flow_story .content:before { left: 0; width: 21px; height: 24px; background-image: url(../img/flow_arow_pc.png);}
  .flow_story .content:after { left: 0.45rem; border-left-width: 3px; }
  .flow_story .item:last-child .content:after { height: 220px; }
}

/*----------------------------------------------------------
    FAQ
----------------------------------------------------------*/
.faq { padding-bottom: 1.75rem; }

.faq_header { position: relative; padding: 4rem 0 0; }

.faq_header:after { content: ''; display: block; width: 3.75rem; border-bottom: 0.15rem solid #a6aa9d; margin: 1rem 0 2.2rem; }

.faq_header .left { width: 26.5rem; margin-bottom: 1.5rem; }

.faq_header .right .right_txt { font-size: 1.9rem; font-weight: 700; }

.faq_lst { width: 100%; }

.faq_lst .faq_q.open:before { opacity: 0; }

.faq_q { background: #001a3a; position: relative; margin-bottom: 1.25rem; }

.faq_q:after { content: ""; display: block; width: 0.9rem; height: 0.1rem; background: #fff; position: absolute; top: calc(50% - 0.05rem); right: 2rem; }

.faq_q:before { content: ""; display: block; height: 0.9rem; width: 0.1rem; background: #fff; opacity: 1; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; position: absolute; top: calc(50% - 0.45rem); right: 2.4rem; }

.faq_q .faq_number { display: table-cell; vertical-align: middle; width: 3.6rem; padding: 0.9rem 0.7rem 0.9rem 1.1rem; }

.faq_q .q_txt { display: table-cell; padding-right: 3rem; vertical-align: middle; font-size: 1.3rem; font-weight: 700; line-height: 1.35; color: #fff; }

.faq_a { position: relative; padding: 0 1rem 1rem 2.5rem; }

.faq_a .faq_answer { position: absolute; width: 0.9rem; top: 0.25rem; left: .75rem; }

.faq_a .p_txt { margin-bottom: 1.5rem; }

@media (min-width: 769px) { .faq_header { display: table; width: 100%; margin-bottom: 3rem; }
  .faq_q { pointer-events: none}
  .faq_a { display: block!important; padding: 0 0 30px 45px;}
  .faq_a .faq_answer { top: -5px;}
  .faq_header:after { content: none; }
  .faq_header .left { display: table-cell; vertical-align: bottom; padding-right: 1.5rem; }
  .faq_header .right { display: table-cell; vertical-align: bottom; }
  .faq_header .right:after { content: ""; display: block; width: 3.75rem; margin: 0.5rem 0 0 0; border-bottom: 0.15rem solid #a6aa9d; }
  .faq .faq_q:after, .faq .faq_q:before { content: none; }
  .faq_q .q_txt { padding-right: 1.5rem; font-size: 0.9rem; }
  .faq_a .p_txt { margin-bottom: 1rem; font-size: 14px;}
  .faq_lst li { float: left; margin-left: 100px; width: 470px; vertical-align: top; }
  .faq_lst li:nth-child(2n+1){ clear: both; margin-left: 0;}
}

/*----------------------------------------------------------
    message
----------------------------------------------------------*/
.message { overflow: hidden; }

.message_header { background: url("../img/message_bg.png") no-repeat top; background-size: 100%; padding: 6.7rem 0 9.7rem; position: relative; z-index: 1000; }

.message_header .header_top { display: inline-block; width: 22.45rem; }

.message .bd_box { position: relative; }

.message .bd_box:before { content: ''; display: block; width: 200%; border-bottom: 0.25rem solid #001a3a; -webkit-transform: rotate(-40deg); -ms-transform: rotate(-40deg); transform: rotate(-40deg); position: absolute; bottom: 17%; left: -50%; z-index: 10; }

.message_box { background: #fff; position: relative; z-index: 1000; margin-top: -6rem; margin-bottom: 3.25rem; padding-bottom: 1.3rem; background: #fff; }

.message_box:after { content: ""; display: block; width: 100%; height: 2rem; background: url("../img/concept_box.png") no-repeat; background-size: 100%; position: absolute; bottom: -2rem; left: 0; }

.message_box .title { background: url("../img/voice_header_item.png") no-repeat center; background-size: auto 100%; padding: 1.25rem 0 1.25rem 1.8rem; }

.message_box .title_txt { font-size: 1.4rem; color: #fff; line-height: 1.5; }

.message_box .title .txt_bold { font-size: 1.9rem; }

.message_box .content { padding: 1.5rem 1.8rem; }
.message_box .content .p_txt + p { margin-top: 1em;}
.message_box .fv_sign { width: 10.3rem; margin: 0 1.7rem 0 auto;}

@media (min-width: 769px) {
  .message { overflow: hidden; }
  .message_header { background: url("../img/message_bg_pc.png") no-repeat center; background-size: cover; padding: 2.5rem 0 16.6rem; }
  .message .bd_box:before { left: -40%; }
  .message_box { position: relative; margin-top: -15rem; margin-right: 33.6%; padding-bottom: 20px; }
  .message_box .title .title_txt { font-size: 0.9rem; }
  .message_box .title .txt_bold { font-size: 1.5rem; }
  .message_box .p_txt { font-size: 0.7rem; }
  .message_box .p_txt + p { margin-top: 1em;}
  .message .fv_sign { position: absolute; right: -5rem; bottom: 2rem; width: 150px;} }

/*----------------------------------------------------------
    footer
----------------------------------------------------------*/
.footer_bg { padding: 1.8rem 0; }

.footer .copyright { font-size: 0.9rem; line-height: 1.5; text-align: center; }

@media (min-width: 769px) { .footer_bg { padding: 2rem 0; }
  .footer .copyright { font-size: 0.7rem; font-family: sans-serif; line-height: 2rem; text-align: center; font-weight: bold; vertical-align: middle; } }

@media (min-width: 769px) and (-ms-high-contrast: none){ /* IE10以上 */
    .change_lst_item .sticker .txt { padding: 1rem 1.75rem 0.5rem 1.25rem;}
    .flow_story .content .title { padding: 0.85rem 1rem 0.5rem;}
}
