@charset "UTF-8";
/*==================================================
home
==================================================*/
/* common
--------------------------------------*/

.home .section {
    padding: 85px 0;
}
.home h2 {
    color: #F090B4/*#0378b2*/;
    font-size: 30px;
    font-weight: 700;
    text-align:center;
    line-height: 140%;
    padding: 0 0 40px;
}
    @media screen and (max-width:900px) {
        .home h2 {
            font-size: 26px;
        }
    }
    @media screen and (max-width:768px) {
        .home .section {
            padding: 9% 0;
        }
        .home h2 {
            padding: 0 0 22px;
        }
    }
    @media screen and (max-width:480px) {
        .home h2 {
            font-size: 23px;
            padding: 0 0 15px;
        }
    }
    @media screen and (max-width:375px) {
        .home h2 {
            font-size: 20px;
        }
    }



/* kv 
--------------------------------------*/
.home .kv {
    position: relative;
    overflow-x: hidden;
    background: #000;
    padding: 500px 0 0;
}
.home .kv::after {
    position: absolute;
    content: "";
    background:  url(../img/top/img_kv.png) no-repeat;
    width: 555px;
    height: 500px;
    top: 0;
    right: 50%;
    margin-right: 115px;
}
.home .kv p {
    position: absolute;
    top: 35px;
    left: 50%;
    margin-left: -190px;
    z-index: 1;
}
    @media screen and (max-width:1200px) {
        .home .kv {
            padding: 45% 0 0;
        }
        .home .kv p {
            top: 8%;
            width: 80%;
            margin-left: -23%;
        }
        .home .kv p img {
            width: 100%;
        }
        .home .kv::after {
            background-size: contain;
            width: 50%;
            height: 100%;
            margin-right: 12%;
        }
    }

/* info
--------------------------------------*/
.home .info {
    text-align: center;
    padding-bottom: 0;
}
.home .info p {
    padding: 0 0 40px;
}
.home .info ul {
    overflow: hidden;
}
.home .info ul:first-of-type li {
    float: left;
    width: 260px;
    margin: 0 0 20px;
}
.home .info ul:first-of-type li + li {
    margin-left: 20px;
}
.home .info ul:last-of-type li {
    float: left;
    width: 208px;
}
.home .info ul:last-of-type li + li {
    margin-left: 15px;
}
.home .info ul li a {
    display: block;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    border: 1px solid #F090B4/*#0372e4*/;
    background: #D1C6C6/*#eaf6ff*/;
    font-size: 18px;
    font-weight: 700;
    padding: 25px 0;
}
.home .info ul li span {
    display: block;
    padding: 0 0 15px;
}
    @media screen and (max-width:1200px) {
        .home .info ul {
            width: 90%;
            margin: 0 auto;
        }
        .home .info ul:first-of-type li {
            width: 23.72%;
            margin: 0 0 1.7%;
        }
        .home .info ul:first-of-type li + li {
            margin-left: 1.7%
        }
        .home .info ul:last-of-type li {
            width: 18.96%;
        }
        .home .info ul:last-of-type li + li {
            margin-left: 1.3%;
        }
    }
    @media screen and (max-width:1000px) {
        .home .info ul li a {
            font-size: 15px;
        }
        .home .info ul li span {
            width: 90px;
            margin: 0 auto;
        }
        .home .info ul li span img {
            width: 100%;
        }
    }
    @media screen and (max-width:768px) {
        .home .info p {
            padding: 0 0 30px;
            text-align: left;
        }
        .home .info ul:first-of-type {
            padding: 0 0 0.5%;
        }
        .home .info ul:first-of-type li,
        .home .info ul:first-of-type li + li {
            width: 49%;
            margin: 0 0.5% 1%;
        }
        .home .info ul:last-of-type li,
        .home .info ul:last-of-type li + li {
            float: none;
            display: inline-block;
            width: 31.5%;
            margin: 0 0.5% 1%;
        }
        .home .info ul li a {
            padding: 15px 0;
        }
        .home .info ul li span {
            width: 32%;
        }
    }
    @media screen and (max-width:480px) {
        .home .info ul:last-of-type li,
        .home .info ul:last-of-type li + li {
            float: none;
            display: inline-block;
            width: 100%;
            margin: 0 0 1%;
        }
        .home .info ul li a {
            font-size: 14px;
        }
        .home .info ul li span {
            padding: 0 0 10px;
        }
    }
    @media screen and (max-width:350px) {
        .home .info ul li a {
            font-size: 13px;
        }
    }

/* reason
--------------------------------------*/
.home .reason #slider {
    text-align: center;
    margin: 0 0 50px;
}
.home .reason ol {
    position: relative;
    flex-wrap:wrap;
}
.home .reason ol::after {
	content: "";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
.home .reason ol li {
    border-top: 4px solid #F090B4/*#0378b2*/;
    padding: 6px 0 0;
    width: 208px;
    float: left;
    text-align: left;
}
.home .reason ol li + li {
    margin-left: 15px;
}
.home .reason ol li img {
    max-width: 100%;
    height: auto;
    margin-bottom: 10px;
}
.home .reason .swiper-button-prev,
.home .reason .swiper-button-next,
.home .reason .swiper-pagination{
    display: none;
}
.prettyprint{
    border: none;
    background: #fafafa;
    color: #697d86;
}
.home .reason ol h3 {
    position: relative;
    text-align: center;
    margin: -29px 0 18px;
    font-size: 18px;
    line-height: 120%;
    font-weight: 700;
    z-index: 1;
}
.home .reason ol h3 span {
    display: block;
    background: #F090B4/*#0378b2*/;
    color: #fff;
    width: 40px;
    height: 40px;
    line-height: 40px;
    font-size: 20px;
    margin: 0 auto 15px;
}
.home .reason ul {
    overflow: hidden;
    padding: 0 0 70px;
}
.home .reason ul {
    overflow: hidden;
    padding: 0 0 70px;
}
.home .reason ul li {
    float: left;
    border: 1px solid #F090B4/*#0372e4*/;
    padding: 3px;
    box-sizing: border-box;
}
.home .reason ul li:first-child {
    width: 457px;
}
.home .reason ul li + li {
    width: 302px;
    margin-left: 19px;
}
.home .reason ul li figcaption {
    font-weight: 700;
    padding: 10px 0;
    line-height: 120%;
    text-align: center;
}
.home .reason ul li figcaption span {
    display: block;
    width: 100px;
    margin: 0 auto 5px;
    color: #fff;
    background: #5b5b5b;
    border-radius: 5px;
    font-size: 11px;
    padding: 6px;
}
.home .reason ul li figcaption em {
    font-size: 13px;
}
    @media screen and (max-width:1200px) {
        .home .reason ol li {
            width: 18.92%;
        }
        .home .reason ol li + li {
            margin-left: 1.34%;
        }
        .home .reason ol li img {
            width: 100%;
        }
        .home .reason ul li:first-child {
            width: 42.1%;
        }
        .home .reason ul li + li {
            width: 27.9%;
            margin-left: 1%;
        }
        .home .reason ul li img {
            width: 100%;
        }
    }
    @media screen and (max-width:1000px) {
        .home .reason #slider {
            padding: 0 0 8%;
            margin: 0 0 6%;
        }
        .home .reason ol {
            flex-wrap: nowrap;
        }
        .home .reason ol li + li {
            margin-left: 0;
        }
        .home .reason .swiper-button-prev,
        .home .reason .swiper-button-next {
            display: block;
            background-image: none;
            background: #F090B4/*#0372e4*/;
            box-sizing: border-box;
            width: 45px;
            height: 45px;
            top: 31%;
        }
        .home .reason .swiper-button-prev {
            left: 0;
        }
        .home .reason .swiper-button-next {
            right: 0;
        }
        .home .reason .swiper-button-prev::after {
            position: absolute;
            content: "";
            width: 13px;
            height: 13px;
            border: 0px;
            border-top: solid 3px #fff;
            border-right: solid 3px #fff;
            -ms-transform: rotate(-135deg);
            -webkit-transform: rotate(-135deg);
            transform: rotate(-135deg);
            position: absolute;
            top: 50%;
            margin-top: -18%;
            left: 40%;
        }
        .home .reason .swiper-button-next::after {
            position: absolute;
            content: "";
            width: 13px;
            height: 13px;
            border: 0px;
            border-top: solid 3px #fff;
            border-right: solid 3px #fff;
            -ms-transform: rotate(45deg);
            -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
            position: absolute;
            top: 50%;
            margin-top: -18%;
            right: 40%;
           }
        .home .reason .swiper-pagination {
            display: block;
            bottom: 0;
        }
    }
    @media screen and (max-width:768px) {
        .home .reason ol h3 {
            font-size: 16px;
            margin: -22px 0 16px;
        }
        .home .reason ol h3 span {
            font-size: 18px;
            width: 35px;
            height: 35px;
            line-height: 35px;
            margin: 0 auto 12px;
        }
        .home .reason ul {
            padding: 0 0 10%;
        }
        .home .reason ul li:first-child {
            width: 100%;
            max-width: 430px;
            margin: 0 auto 2%;
            float: none;
        }
        .home .reason ul li + li {
            width: 49%;
            margin-left: 0;
        }
        .home .reason ul li:last-child {
            margin-left: 2%;
        }
    }
    @media screen and (max-width:480px) {
        .home .reason ul li figcaption em {
            font-size: 12px;
        }
        .home .reason ul li figcaption span {
            font-size: 10px;
            padding: 3px;
        }
    }

/* commission
--------------------------------------*/
.home .commission {
    background: #fff/*#D1C6C6/*#cce8fd*/;
    overflow: hidden;
    padding-top: 65px;
}
/* contents */
.home .commission .contents {
    width: 850px;
    float: right;
}
.home .commission .contents h2 {
    color: #F090B4/*#144dad*/;
    font-size: 40px;
    line-height: 100%;
}
.home .commission .contents h2 span {
    display: block;
    font-size: 24px;
    padding: 25px 0 10px;
}
.home .commission .contents ul {
    overflow: hidden;
    padding: 0 0 20px;
}
.home .commission .contents li {
    width: 270px;
    float: left;
    background: #fff;
    padding: 4px;
    box-sizing: border-box;
    margin: 0 0 20px 20px;
}
.home .commission .contents li:nth-child(3n+1) {
    margin-left: 0;
}
.home .commission .contents .txtWrap {
    padding: 20px;
}
.home .commission .contents .txtWrap h3 {
    position: relative;
    color: #F090B4/*#0378b2*/;
    font-size: 18px;
    font-weight: 700;
    padding-left: 35px;
    line-height: 130%;
}
.home .commission .contents .txtWrap h3::after {
    position: absolute;
    content: "";
    background: url(../img/common/icn_glass.svg) no-repeat;
    background-size: contain;
    top: 0;
    left: 0;
    width: 26px;
    height: 26px;
}
.home .commission .contents .txtWrap p {
    padding: 15px 0 10px;
}
.home .commission .contents li .btn {
    position: relative;
}
.home .commission .contents li .btn:before{
    content: "";
    width: 6px;
    height: 6px;
    border: 0px;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    -ms-transform: rotate(45deg) translate(-50%,0);
    -webkit-transform: rotate(45deg) translate(-50%,0);
    transform: rotate(45deg) translate(-50%,0);
    position: absolute;
    top: 50%;
    right: 5%;
}
    @media screen and (max-width:1200px) {
        .home .commission .contents {
            width: 74%;
        }
        .home .commission .contents li {
            width: 32%;
            margin: 0 0 2% 1.5%;
        }
        .home .commission .contents li img {
            width: 100%;
        }
    }
    @media screen and (max-width:900px) {
        .home .commission .contents {
            width: 100%;
        }
        .home .commission .contents li {
            margin: 0 0 2% 2%;
        }
    }
    @media screen and (max-width:768px) {
        .home .commission {
            padding-top: 9%;
        }
        .home .commission .contents h2 {
            font-size: 28px;
        }
        .home .commission .contents h2 span {
            font-size: 20px;
            padding: 0 0 10px;
        }
        .home .commission .contents .txtWrap {
            padding: 15px 10px 10px;
        }
        .home .commission .contents .txtWrap h3 {
            font-size: 17px;
            padding-left: 27px;
        }
        .home .commission .contents .txtWrap h3::after {
            width: 20px;
            height: 20px;
        }
        .home .commission .contents .txtWrap p {
            padding: 10px 0;
        }
    }
    @media screen and (max-width:640px) {
        .home .commission .contents li {
            width: 49%;
        }
        .home .commission .contents li:nth-child(3n+1) {
            margin-left: 2%;
        }
        .home .commission .contents li:nth-child(2n+1) {
            margin-left: 0;
        }
    }
    @media screen and (max-width:480px) {
        .home .commission .contents h2 {
            font-size: 22px;
        }
        .home .commission .contents h2 span {
            font-size: 16px;
            padding: 0 0 6px;
        }
        .home .commission .contents li,
        .home .commission .contents li:nth-child(2n+1),
        .home .commission .contents li:nth-child(3n+1) {
            float: none;
            width: 95%;
            margin: 0 auto 2%;
        }
    }
    @media screen and (max-width:375px) {
        .home .commission .contents h2 {
            font-size: 19px;
        }
        .home .commission .contents h2 span {
            font-size: 15px;
        }
    }

/* greeting
--------------------------------------*/
.home .greeting .inr {
    width: 820px;
}
.home .greeting p + p {
    padding: 30px 0 0;
}
    @media screen and (max-width:900px) {
        .home .greeting .inr {
            width: 90%;
        }
    }
    @media screen and (max-width:480px) {
        .home .greeting p + p {
            padding: 20px 0 0;
        }
    }

/* topics
--------------------------------------*/
.home .topics {
    border-top: 3px solid #D1C6C6/*#33a4c4*/;
}
/* list */
.home .topics .list {
    width: 820px;
    margin: 0 auto;
    overflow: hidden;
    padding: 40px 0;
}
.home .topics .list h2 {
    float: left;
    font-size: 20px;
    padding: 15px 0 0;
}
.home .topics .list ul {
    float: right;
    border-left: 1px solid #D1C6C6/*#33a4c4*/;
    padding: 17px 0 17px 32px;
    width: 648px;
    box-sizing: border-box;
}
.home .topics .list ul li + li {
    padding: 15px 0 0;
}
.home .topics .list dt {
    float: left;
    clear: both;
    width: 108px;
}
.home .topics .list dd {
    padding-left: 108px;
    line-height: 140%;
}
/* media */
.home .topics .media {
    background: #fafafa;
    padding: 80px 0 75px;
}
.home .topics .media p {
    color: #5b5b5b;
    font-size: 30px;
    font-weight: 700;
    text-align: center;
    padding: 0 0 36px;
    line-height: 140%;
}
.home .topics .media ul {
    overflow: hidden;
}
.home .topics .media li {
    float: left;
    width: 175px;
    border-top: 4px solid #F090B4/*#0378b2*/;
    padding: 6px 0 0;
}
.home .topics .media li + li {
    margin-left: 10px;
}
.home .topics .media li figcaption {
    text-align: center;
    font-size: 12px;
}
.home .topics .media li figcaption span {
    display: block;
    color: #F090B4/*#0378b2*/;
    font-weight: 700;
    padding: 11px 0 7px;
    font-size: 13px;
    line-height: 130%;
}
    @media screen and (max-width:1200px) {
        .home .topics .media li {
            width: 15.5%;
            margin: 0 0.5% 2% 0.5%;
        }
        .home .topics .media li img {
            width: 100%;
        }
        .home .topics .media li + li {
            margin-left: 0.5%;
        }
    }
    @media screen and (max-width:900px) {
        .home .topics .list {
            width: 90%;
        }
        .home .topics .list {
            padding: 25px 0;
        }
        .home .topics .list h2 {
            padding: 0 0 10px;
            float: none;
            text-align: left;
            font-size: 18px;
        }
        .home .topics .list ul {
            float: none;
            margin-left: 15px;
            width: auto;
            padding: 10px 0 15px 20px;
        }
        .home .topics .media p {
            font-size: 26px;
        }
        .home .topics .media li {
            width: 23.7%;
        }
    }
    @media screen and (max-width:768px) {
        .home .topics .media {
            padding: 14% 0;
        }
        .home .topics .media p {
            font-size: 22px;
            padding: 0 0 25px;
        }
        .home .topics .list {
            padding: 25px 0;
        }
    }
    @media screen and (max-width:480px) {
        .home .topics .list ul {
            padding: 5px 0 15px 15px;
        }
        .home .topics .list ul li + li {
            padding: 10px 0 0;
        }
        .home .topics .list dt {
            float: none;
            width: auto;
            padding: 10px 0 0;
        }
        .home .topics .list dd {
            padding: 7px 0 0;
        }
        .home .topics .media p {
            font-size: 18px;
        }
        .home .topics .media li {
            width: 46%;
            margin: 0 2% 5% 2%;
        }
        .home .topics .media li + li {
            margin-left: 2%;
        }
        .home .topics .list h2 {
            padding: 0 0 6px;
        }
    }

/* map
--------------------------------------*/
.home .map iframe {
    width: 100%;
    height: 310px;
}
.home .map  {
    position: relative;
    width: 100%;
    padding-top: 44%;
}
.home .map  iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
}

/*==================================================
modal
==================================================*/
/* modal_movie
--------------------------------------*/
.modal-video {
    background-color: rgba(0,0,0,0.7);
  }
    @media screen and (max-width:1100px) {
        .modal-video-movie-wrap {
            width: 90.625%;
            margin: 0 auto;
        }
        .modal-video-close-btn {
            top: -43px;
            right: 0;
        }
    }
    @media screen and (max-width:768px) {
        .modal-video-close-btn {
            top: -17%;
            width: 8%;
            height: auto;
            padding: 8% 0 0;
        }
        .modal-video-close-btn:before,
        .modal-video-close-btn:after {
            margin-top: 0;
        }
       }
  
/*==================================================
page --- common
==================================================*/
.page {
    position: relative;
    border-bottom: 3px solid #D1C6C6/*#33a4c4*/;
}
.page::before {
    position: absolute;
    content: "";
    background: #f4f4f4;
    top: 0;
    left: 0;
    width: 100%;
    height: 360px;
}
.main {
    position: relative;
    padding: 30px 0 0;
    z-index: 1;
}
.main:after {
    content: "";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
.pageKv {
    position: relative;
    background: #000;
    width: 100%;
    height: auto;
    padding: 240px 0 0;
    text-align: center;
    z-index: 1;
}
.pageKv::after {
    position: absolute;
    content: "";
    background: url(../img/page/page_img_kv.png) no-repeat;
    background-size: contain;
    top: 0;
    left: 50%;
    width: 346px;
    height: auto;
    padding: 17.9% 0 0;
    margin-left: -750px;
}
.pageKv p {
    position: absolute;
    top: 32px;
    left: 50%;
    -ms-transform: translate(-50%,0);
    -webkit-transform: translate(-50%,0);
    transform: translate(-50%,0);
    z-index: 1;
}
.pageMain {
    float: right;
    width: 850px;
}
    @media screen and (max-width:1350px) {
        .pageKv {
            height: 0;
            padding: 17.9% 0 0;
        }
        .pageKv::after {
            left: 0;
            margin-left: -2%;
        }
    }
    @media screen and (max-width:1200px) {
        .page::before {
            height: auto;
            padding: 32% 0 0;
        }
        .pageKv p {
            width: 98%;
            margin: 0 auto;
        }
        .pageKv p img {
            width: 100%;
        }
        .pageMain {
            width: 74%;
        }
    }
    @media screen and (max-width:900px) {
        .pageMain {
            width: 100%;
        }
    }
    @media screen and (max-width:768px) {
        .page::before {
            padding: 130px 0 0;
        }
        .pageKv {
            display: none;
        }
    }

/* contHeader
--------------------------------------*/
.contHeader {
    position: relative;
    background: #fff;
    margin-top: -78px;
}
.contHeader::after {
    position: absolute;
    content: "";
    top: 2px;
    right: 2px;
    width: 285px;
    height: 106px;
}
    .select .contHeader::after {
        background: url(../img/page/ttl_select.png) no-repeat;
    }
    .flow .contHeader::after {
        background: url(../img/page/ttl_flow.png) no-repeat;
    }
    .price .contHeader::after {
        background: url(../img/page/ttl_price.png) no-repeat;
    } 
    .access .contHeader::after {
        background: url(../img/page/ttl_access.png) no-repeat;
    } 
    .question .contHeader::after {
        background: url(../img/page/ttl_question.png) no-repeat;
    } 
    .press .contHeader::after {
        background: url(../img/page/ttl_press.png) no-repeat;
    }
    .privacy .contHeader::after {
        background: url(../img/page/ttl_privacy.png) no-repeat;
    }
    .sitemap .contHeader::after {
        background: url(../img/page/ttl_sitemap.png) no-repeat;
    }
    .cheating .contHeader::after {
        background: url(../img/page/ttl_cheating.png) no-repeat;
    }
    .divorce .contHeader::after {
        background: url(../img/page/ttl_divorce.png) no-repeat;
    }
    .search .contHeader::after {
        background: url(../img/page/ttl_search.png) no-repeat;
    }
    .corporation .contHeader::after {
        background: url(../img/page/ttl_corporation.png) no-repeat;
    }
    .neighborhood .contHeader::after {
        background: url(../img/page/ttl_neighborhood.png) no-repeat;
    }
    .research .contHeader::after {
        background: url(../img/page/ttl_research.png) no-repeat;
    }
    .wiretap .contHeader::after {
        background: url(../img/page/ttl_wiretap.png) no-repeat;
    }
    .stalker .contHeader::after {
        background: url(../img/page/ttl_stalker.png) no-repeat;
    }
    .tease .contHeader::after {
        background: url(../img/page/ttl_tease.png) no-repeat;
    }
    .justice .contHeader::after {
        background: url(../img/page/ttl_justice.png) no-repeat;
    }
    .special .contHeader::after {
        background: url(../img/page/ttl_special.png) no-repeat;
    }
    .contact .contHeader::after {
        background: url(../img/page/ttl_contact.png) no-repeat;
    }
    .first .contHeader::after {
        background: url(../img/page/ttl_first.png) no-repeat;
    }
.contHeader .ttl {
    font-size: 32px;
    color: #5b5b5b;
    line-height: 120%;
    padding: 17px 20px;
}
    .contHeader h1.ttl {
        height: 110px;
        line-height: 110px;
        padding: 0 20px;
    }
.contHeader .pageTtl {
    font-size: 20px;
    color: #fff;
    background: #D1C6C6/*#33a4c4*/;
    line-height: 120%;
    padding: 13px 20px;
}
.breadcrumb {
    overflow: hidden;
    padding: 12px 0;
}
.breadcrumb li {
    display: inline-block;
    font-size: 13px;
    line-height: 170%;
}
.breadcrumb li a {
    color: #D1C6C6/*#30aaff*/;
    text-decoration: underline;
    margin-right: 5px;
}
    @media screen and (max-width:1350px) {
        .contHeader {
            margin-top: -7.5%;
        }
    }
    @media screen and (max-width:900px) {
        .contHeader .ttl {
            font-size: 27px;
        }
    }
    @media screen and (max-width:768px) {
        .contHeader {
            margin-top: 0;
        }
        .contHeader::after {
            content: none;
        }
        .contHeader .ttl {
            font-size: 24px;
        }
        .contHeader h1.ttl {
            height: auto;
            line-height: 120%;
            padding: 20px;
        }
        .contHeader .pageTtl {
            font-size: 18px;
        }
    }
    @media screen and (max-width:480px) {
        .contHeader .ttl,
        .contHeader h1.ttl {
            font-size: 20px;
            padding: 13px 15px;
        }
        .contHeader .pageTtl {
            font-size: 16px;
            padding: 13px 15px;
        }
    }

/* contMain
--------------------------------------*/
.contMain .cont {
    margin: 50px 0 90px;
}
.contMain p {
    padding: 0 12px;
    margin: 0 0 30px;
}
.contMain p em {
    font-weight: 700;
}
.contMain p.pointTxt {
    font-size: 18px;
    color: #F090B4/*#0188ae*/;
}
.contMain p.lineTxt {
    padding-top: 50px;
    margin-top: 50px;
    border-top: 1px dashed #ccc;
}
.contMain a.txtLink {
    display: inline-block;
    position: relative;
    color: #D1C6C6/*#30aaff*/;
    text-decoration: underline;
    margin: 0 0 30px 32px;
}
.contMain a.txtLink::before {
    content: "";
    width: 8px;
    height: 8px;
    border: 0px;
    border-top: solid 2px #D1C6C6/*#30aaff*/;
    border-right: solid 2px #D1C6C6/*#30aaff*/;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    margin-top: -4px;
    left: -20px;
}
.contMain h2 {
    font-size: 28px;
    color: #F090B4/*#0188ae*/;
    font-weight: 700;
    border-top: 4px solid #F090B4/*#0188ae*/;
    line-height: 120%;
    padding: 12px 12px 0;
    margin: 0 0 28px;
}
.contMain h3 {
    line-height: 140%;
    padding: 0 12px 8px;
    margin: 35px 0 15px;
    border-bottom: 1px solid #D1C6C6/*#33a4c4*/;
    overflow: hidden;
}
.contMain h4 {
    line-height: 140%;
    color: #F090B4/*#0188ae*/;
    font-weight: 700;
    font-size: 16px;
    margin: 0 0 10px;
}
.contMain .captionList h4 {
    padding: 0 12px 8px;
}
.contMain h3 .number,
.contMain h4 .number {
    float: left;
    clear: both;
    display: block;
    color: #fff;
    background: #5b5b5b;
    border-radius: 5px;
    padding: 2px 8px;
    font-size: 13px;
}
    .contMain h4 .number {
        background: #D1C6C6/*#33a4c4*/;
    }
.contMain h3 .ttl,
.contMain h4 .ttl {
    display: block;
    font-size: 18px;
    font-weight: 400;
    padding: 2px 0 2px 74px;
}
    .contMain .caseList.question h3 .ttl {
        padding-left: 95px;
    }
.contMain .img {
    float: right;
	margin: 5px 0 5px 10px;
	padding: 4px;
	border: 1px solid #e3e3e3;
	background: #fff;
}
.contMain .img img {
    max-width: 225px;
}
.contMain .mailTxt {
    width: 90%;
    border: 1px dashed #D1C6C6/*#33a4c4*/;
    padding: 30px 30px 0;
    margin: 30px auto;
    box-sizing: border-box;
}
/* table */
.contMain table {
	width: 100%;
	margin: 25px 0;
	border: 1px solid #d3d3d3;
	box-sizing: border-box;
}
.contMain tr {
	border-bottom: 1px solid #d3d3d3;
}
.contMain th {
	width: 200px;
	padding: 20px;
	border-right: 1px solid #d3d3d3;
	background: #f9f9f9;
	box-sizing: border-box;
}
.contMain thead th {
    color: #fff;
    background: #F090B4/*#0188ae*/;
}
.contMain td {
    padding: 20px;
    line-height: 140%;
	box-sizing: border-box;
}
.contMain td + td {
    border-left: 1px solid #d3d3d3;
}
.contMain td em {
    color: #F090B4/*#0188ae*/;
    font-weight: 700;
}
/* list */
.contMain .list {
    padding: 0 12px;
    margin: 0 0 30px;
}
.contMain .list li {
    position: relative;
    padding-left: 20px;
    line-height: 140%;
}
.contMain .list li::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "●";
    padding: 0 5px 0 0;
    margin: 0 0 0 5px;
    font-size: 10px;
    color:#4e4e4e;
}
.contMain .list li + li {
    margin-top: 10px;
}
    .contMain .list.point li {
        color: #F090B4/*#0188ae*/;
    }
/* pointList */
.contMain .pointList {
    border-top: 1px solid #D1C6C6/*#33a4c4*/;
    margin: 0 0 30px;
}
.contMain .pointList dt {
    float: left;
    clear: both;
    width: 90px;
    line-height: 140%;
    font-size: 18px;
    padding: 13px 12px;
    box-sizing: border-box;
}
.contMain .pointList dt span {
    display: inline-block;
    color: #fff;
    background: #5b5b5b;
    border-radius: 5px;
    padding: 2px 8px;
    font-size: 13px;
}
.contMain .pointList dd {
    line-height: 170%;
    font-size: 15px;
    padding: 15px 12px 15px 90px;
    border-bottom: 1px solid #D1C6C6/*#33a4c4*/;
}
/* checkList */
.contMain .checkList {
    padding: 0 0 18px;
}
.contMain .checkList li .listWrap {
    background: #fafafa;
    border: 1px solid #dedede;
    box-sizing: border-box;
    display: table;
    width: 100%;
    padding: 15px 10px;
}
.contMain .checkList li:nth-child(even) .listWrap {
    background: #fff;
}
.contMain .checkList li .number {
    display: table-cell;
    vertical-align: middle;
    width: 30px;
    text-align: center;
}
.contMain .checkList li .number span {
    display: block;
    color: #fff;
    background: #F090B4/*#0188ae*/;
    height: 30px;
    line-height: 30px;
    padding: 0 5px;
}
.contMain .checkList li p {
    display: table-cell;
    padding-left: 10px;
    vertical-align: middle;
}
/* checkList --- checkbox */
.contMain .checkList .checkbox {
    display: none;
}
.contMain .checkList li .checkWrap {
    position:relative;
    padding-left: 42px;
}
.contMain .checkList li .checkWrap::before{
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  -ms-transform: translate(0,-50%);
  -webkit-transform: translate(0,-50%);
  transform: translate(0,-50%);
  width: 25px;
  height: 25px;
  border: 2px solid #D1C6C6/*#30aaff*/;
  border-radius: 4px;
}
.contMain .checkbox:checked + .checkWrap::after{
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  margin-top: -12px;
  left: 10px;
  width: 7px;
  height: 14px;
  transform: rotate(40deg);
  border-bottom: 3px solid #D1C6C6/*#30aaff*/;
  border-right: 3px solid #D1C6C6/*#30aaff*/;
}
.contMain .checkList li label {
    display: table-cell;
    padding-left: 10px;
    vertical-align: middle;
    text-decoration: underline;
    cursor: pointer;
    line-height: 140%;
}
/* planList */
.contMain .planList {
    border-top: 1px solid #D1C6C6/*#33a4c4*/;
    padding: 0 0 30px;
}
.contMain .planList:last-of-type {
    padding: 0;
}
.contMain .planList dt {
    float: left;
    clear: both;
    width: 95px;
    line-height: 140%;
    font-size: 18px;
    padding: 13px 12px;
    box-sizing: border-box;
}
.contMain .planList dt span {
    display: inline-block;
    color: #fff;
    background: #5b5b5b;
    border-radius: 5px;
    padding: 2px 8px;
    font-size: 13px;
}
.contMain .planList dd {
    line-height: 170%;
    font-size: 15px;
    padding: 13px 12px 13px 95px;
}
/* indexList / pageList */
.contMain .indexList {
    background: #D1C6C6/*#eaf6ff*/;
    padding: 30px 35px 40px;
}
.contMain .indexList h2 {
    border: none;
    text-align: center;
    color: #5b5b5b;
    padding: 0 0 26px;
    margin: 0;
}
.contMain .indexList ul,
.contMain .pageList {
    overflow: hidden;
}
.contMain .indexList li,
.contMain .pageList li {
    float: left;
    width: 48.7%;
    background: #fff;
    border: 2px solid #D1C6C6/*#30aaff*/;
    border-radius: 5px;
    text-align: center;
    margin: 0 0 10px;
    font-size: 16px;
    box-sizing: border-box;
}
.contMain .indexList li:nth-child(even),
.contMain .pageList li:nth-child(even) {
    float: right;
}
.contMain .indexList li:nth-child(odd),
.contMain .pageList li:nth-child(odd) {
    clear: both;
}
.contMain .indexList li a,
.contMain .pageList li a {
    display: block;
    padding: 15px 0;
    border: 1px solid #fff;
    border-radius: 3px;
    line-height: 120%;
}
.contMain .indexList li.current,
.contMain .pageList li.current {
    background: #D1C6C6/*#30aaff*/;
}
.contMain .indexList li.current a,
.contMain .pageList li.current a {
    color: #fff;
}
.contMain .indexList li.current a::after,
.contMain .pageList li.current a::after {
    border-color: #fff;
}
    @media screen and (max-width:768px) {
        .contMain {
            margin: 40px 0 75px;
        }
        .contMain h2 {
            font-size: 26px;
        }
        .contMain .caseList dt .ttl {
            font-size: 17px;
        }
        .contMain .indexList {
            padding: 30px 3% 40px;
        }
        .contMain .indexList li,
        .contMain .pageList li {
            font-size: 15px;
        }
        .contMain .cont:first-of-type {
            margin-top: 0;
        }
        
    }
    @media screen and (max-width:480px) {
        .contMain {
            margin: 30px 0 60px;
        }
        .contMain p.pointTxt {
            font-size: 16px;
        }
        .contMain h2 {
            font-size: 22px;
        }
        .contMain h3 {
            padding: 0 5px 8px;
        }
        .contMain h3 .ttl {
            padding-left: 64px;
        }
        .contMain .caseList.question h3 .ttl {
            padding-left: 86px;
        }
        .contMain .caseList.check h3 .ttl {
            padding-left: 70px;
        }
        .contMain .img {
            display: block;
			float: none;
			margin: 10px auto;
			max-width: 225px;
        }
        .contMain .mailTxt {
            width: 94%;
            padding: 30px 3% 0;
        }
        .contMain table {
            width: 96%;
            margin: 20px auto;
        }
        .contMain th {
            display: block;
            width: 100%;
            padding: 8px 10px;
            border-right: none;
        }
        .contMain td {
            display: block;
            width: 100%;
            padding: 10px 10px 12px;
        }
        .contMain td + td {
            border-left: none;
        }
        .contMain .pointList dt {
            padding: 13px 5px;
            width: 75px;
        }
        .contMain .pointList dd {
            padding-left: 75px;
        }
        .contMain .planList dt {
            float: none;
            width: 100%;
        }
        .contMain .planList dd {
            padding: 0;
        }
        .contMain .indexList li,
        .contMain .pageList li {
            float: none!important;
            width: 100%;
        }
    }
    @media screen and (max-width:375px) {
        .contMain h2 {
            font-size: 20px;
        }
    }

/*==================================================
page --- flow
==================================================*/
.flow .cont ol {
    border-top: 3px solid #D1C6C6/*#33a4c4*/;
    border-bottom: 3px solid #D1C6C6/*#33a4c4*/;
}
.flow .cont ol h3 {
    position: relative;
    border: none;
    margin: 25px 0 0;
    z-index: 1;
}
.flow .cont ol h3 .ttl {
    color: #0188ae;
    font-weight: 700;
}
.flow .cont ol li {
    position: relative;
}
.flow .cont ol li::before {
    position: absolute;
    content: "";
    background: #D1C6C6/*#33a4c4*/;
    top: 0;
    left: 31px;
    width: 12px;
    height: 100%;
}
.flow .cont ol li::after {
    position: absolute;
    content: "";
    border-top: solid 16px #D1C6C6/*#33a4c4*/;
    border-left: solid 13px transparent;
    border-right: solid 13px transparent;
    top: 100%;
    margin-top: -4px;
    left: 24px;
    background: #fff;
}
.flow .cont ol li:last-child::before,
.flow .cont ol li:last-child::after {
    content: none;
}
.flow .cont ol p {
    border-bottom: 1px solid #D1C6C6/*#33a4c4*/;
    padding: 0 12px 30px 12px;
    margin: 0 0 0 74px;
}
.flow .cont ol li:last-child p {
    border-bottom: none;
    margin-bottom: 0;
}
    @media screen and (max-width:480px) {
        .flow .cont ol li::before {
            left: 25px;
        }
        .flow .cont ol li::after {
            left: 18px;
        }
        .flow .cont ol p {
            margin: 0 0 0 57px;
        }
    }



.cont ol li:last-child p {
    border-bottom: none;
    margin-bottom: 0;
}
    @media screen and (max-width:480px) {
        .cont ol li::before {
            left: 25px;
        }
        .cont ol li::after {
            left: 18px;
        }
        .cont ol p {
            margin: 0 0 0 57px;
        }
    }


/*==================================================
page --- price
==================================================*/
.price th {
    text-align: center;
    width: 245px;
}
    @media screen and (max-width:768px) {
        .price th {
            width: 205px;
        }
    }
    @media screen and (max-width:480px) {
        .price th {
            width: 100%;
        }
    }

/*==================================================
page --- access
==================================================*/
.access .mapWrap {
    padding: 30px 0 20px;
    text-align: center;
}
.access iframe {
    width: 820px;
    height: 499px;
}
.access .cont .btn {
    width: 220px;
    margin: 0 auto 30px;
}
.access dl {
    line-height: 200%;
    text-align: center;
}
.access dt {
    font-size: 20px;
    font-weight: 700;
}
    @media screen and (max-width:900px) {
        .access .mapWrap {
            padding-top: 0;
        }
        .access .map {
            position: relative;
            width: 94%;
            padding-top: 56.25%;
            margin: 0 auto;
        }
        .access iframe {
            position: absolute;
            top: 0;
            right: 0;
            width: 100% !important;
            height: 100% !important;
        }
    }
    @media screen and (max-width:480px) {
        .access .cont .btn {
            margin: 0 auto 15px;
        }
        .access dl {
            text-align: left;
        }
        .access dt {
            font-size: 18px;
        }
    }

/*==================================================
page --- question
==================================================*/
.question .faqList {
    border-top: 3px solid #F090B4/*#0188ae*/;
    border-bottom: 3px solid #F090B4/*#0188ae*/;
}
.question .faqList dt {
    position: relative;
    cursor: pointer;
    border-top: 1px solid #F090B4/*#0188ae*/;
}
.question .faqList dt:first-child {
    border-top: none;
}
.question .faqList dt .title {
    padding-left: 10px;
    line-height: 130%;
    font-size: 18px;
    font-weight: 700;
    color: #F090B4/*#0188ae*/;
    padding: 20px 45px 20px 20px;
}
.question .faqList dd {
    display:/*none*/block;
	background: #fff;
    padding: 0 20px 25px;
    line-height: 140%;
}
.question dt .icnBtn {
    position: absolute;
	width: 30px;
	height: 30px;
    top: 18px;
    right: 10px;
    transition: all .4s;
}
.question dt .icnBtn::before {
    position: absolute;
    content: "";
    width: 30px;
    height: 30px;
    top: 0;
    left: 0;
    background: #F090B4/*#0372e4*/;
    border: 2px solid #F090B4/*#0372e4*/;
    border-radius: 30px;
    box-sizing: border-box;
}
.question dt .icnBtn span {
    position: absolute;
    left: 7.5px;
    width: 50%;
	height: 2px;
    background: #fff;
    border-radius: 4px;
    transition: all .4s;
}
.question dt .icnBtn span:nth-of-type(1) {
    top: 13.5px;
    -webkit-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
	transform: rotate(0deg);
}
.question dt .icnBtn span:nth-of-type(2) {
    top: 13.5px;
    -webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	transform: rotate(90deg);
}
.question dt .icnBtn.active span:nth-of-type(1) {
	display: /*none*/block;
}
.question dt .icnBtn.active span:nth-of-type(2) {
    top: 13.5px;
    -webkit-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	transform: rotate(180deg);
    background: #F090B4/*#0372e4*/;
}
.question dt .icnBtn.active::before {
    background: #fff;
}
    @media screen and (max-width:480px) {
        .question .faqList dt .title {
            font-size: 16px;
        }
    }

/*==================================================
page --- press
==================================================*/
.press .bookList {
    overflow: hidden;
    margin: 50px auto 40px;
}
.press .bookList li {
    float: left;
    width: 25.3%;
    padding: 0 4% 25px;
    margin: 0 0 25px;
}
.press .bookList li dt {
    font-weight: 700;
    line-height: 120%;
    margin: 0 0 10px;
}
.press .bookList li dt img {
    display: block;
    margin: 0 auto 10px;
    width: auto!important;
}
.press .bookList li dd {
    font-size: 14px;
    line-height: 140%;
}
.press table th {
    width: 300px;
}
.press table td:first-of-type {
    width: 200px;
}
.press .madiaList dl {
    padding: 20px;
    margin: 0 0 20px;
    border: 1px dotted #D1C6C6/*#33a4c4*/;
    background: #f6f6f6;
}
.press .madiaList dt {
    color: #D1C6C6/*#33a4c4*/;
    line-height: 140%;
    margin: 0 0 10px;
}
.press .madiaList dd {
    line-height: 170%;
}
    @media screen and (max-width:900px) {
        .press table th,
        .press table td {
            padding: 20px 3%;
        }
        .press table th {
            width: 45%;
        }
        .press table td:first-of-type {
            width: 20%;
        }
        .press table td:last-of-type {
            width: 35%;
        }
    }
    @media screen and (max-width:768px) {
        .press .bookList li {
            width: 42%;
        }
    }
    @media screen and (max-width:480px) {
        .press .bookList li {
            width: 92%;
            border-bottom: 1px dotted #D1C6C6/*#33a4c4*/;
        }
        .press .bookList li:last-child {
            border-bottom: 0;
        }
        .press .bookList li dt {
            text-align: center;
        }
        .press table th {
            width: 100%;
            padding: 10px 5%;
        }
        .press table td:first-of-type {
            width: 100%;
            padding: 10px 5%;
        }
        .press table td:last-of-type {
            width: 100%;
            padding: 0 5% 10px;
        }
    }

/*==================================================
page --- privacy
==================================================*/
.privacy p a {
    color: #D1C6C6/*#30aaff*/;
    text-decoration: underline;
}

/*==================================================
page --- sitemap
==================================================*/
.sitemap .cont ul {
    display: inline-block;
    vertical-align: top;
    padding-left: 60px;
}
.sitemap .cont li {
    position: relative;
    margin: 0 0 17px;
}
.sitemap .cont li::after {
    content: "";
    width: 8px;
    height: 8px;
    border: 0px;
    border-top: solid 2px #D1C6C6/*#33a4c4*/;
    border-right: solid 2px #D1C6C6/*#33a4c4*/;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    margin-top: -4px;
    left: 0;
}
.sitemap .cont li a {
    padding-left: 25px;
}
    @media screen and (max-width:580px) {
        .sitemap .cont ul {
            padding-left: 25px;
        }
    }
    @media screen and (max-width:480px) {
        .sitemap .cont ul {
            width:94%;
            padding:0;
            margin:0 3%;
            border:1px solid #D1C6C6/*#33a4c4*/;
            border-bottom:none;
            box-sizing:border-box;
        }
        .sitemap .cont ul + ul {
            margin-top:30px;
        }
        .sitemap .cont li {
            border-bottom:1px solid #D1C6C6/*#33a4c4*/;
            margin: 0;
        }
        .sitemap .cont li::after {
            left: 5px;
        }
        .sitemap .cont li a {
            display:block;
            padding: 10px 5px 10px 30px;
        }
    }

/*==================================================
page --- cheating
==================================================*/
/* ctg_preparation
---------------------------------------------------*/
.ctg_preparation .table_schedule {
    margin: 25px 0;
}
.ctg_preparation .table_schedule caption {
    text-align: center;
	padding: 0 0 10px;
}
.ctg_preparation .table_schedule table {
    margin: 0 0 10px;
}
.ctg_preparation .table_schedule th {
    display: table-cell;
	padding: 15px;
    text-align: center;
    border-right: 1px solid #d3d3d3;
}
.ctg_preparation .table_schedule td {
    display: table-cell;
	padding: 10px 4px;
	font-size: 13px;
    border-right: 1px solid #d3d3d3;
    vertical-align: top;
}
.ctg_preparation .img_schedule {
	display: none;
}
.ctg_preparation .table_schedule::-webkit-scrollbar {
    -webkit-appearance: none;
    height: 7px;
}
.ctg_preparation .table_schedule::-webkit-scrollbar-thumb {
    border-radius: 5px;
    background-color: rgba(0,0,0,.2);
}
	@media screen and (max-width: 1000px) {
		.ctg_preparation .table_schedule td {
			font-size: 12px;
		}
	}
	@media screen and (max-width: 800px) {
		.ctg_preparation .table_schedule table {
			width: 100%;
		}
		.ctg_preparation .table_schedule td {
			font-size: 13px;
		}
	}
    @media screen and (max-width: 768px) {
        .ctg_preparation .table_schedule {
            overflow-x: auto;
        }
        .ctg_preparation .table_schedule table {
            width: 721px;
        }
        .ctg_preparation .table_schedule caption {
            text-align: left;
            padding-left: 1%;
        }
        .ctg_preparation .table_schedule th,
        .ctg_preparation .table_schedule td {
            width: 100px;
        }
    }

/* ctg_report
---------------------------------------------------*/
.ctg_report .report {
    overflow: hidden;
}
.ctg_report .report li {
    float: left;
    padding: 10px;
    margin: 1%;
    text-align: center;
    border: 1px solid #D1C6C6/*#30aaff*/;
}
    @media screen and (max-width: 480px) {
        .ctg_report .report {
            width: 224px;
            margin: 0 auto;
        }
        .ctg_report .report li {
            margin: 5px;
        }
    }

/*==================================================
page --- divorce
==================================================*/
.divorce .note {
    padding: 0;
    font-size: 14px;
    text-align: right;
}
.divorce .table thead th {
    text-align: center;
}
.divorce .compare {
    width: 50%;
    float: left;
}
.divorce .compare tr:nth-of-type(odd) td {
    background: #f9f9f9;
}
.divorce .list p {
    padding: 0;
}
    @media screen and (max-width: 768px) {
        .divorce .compare,
        .divorce .shift {
            width: 100%;
            float: none;
        }
    }
    @media screen and (max-width: 480px) {
        .divorce .shift th,
        .divorce .shift td {
            display: table-cell;
            width: auto;
            border-left: 1px solid #d3d3d3;
        }
    }

/*==================================================
page --- contact
==================================================*/
.contact table.mailform {
    width: 100%;
}
.contact .mailform th {
    width: 210px;
}
.contact .mailform span.import {
    color: #be0000;
    font-size: 10px;
}
.contact .mailform ul {
    overflow:  hidden;
}
.contact .mailform li {
    float: left;
    padding: 0 20px 5px 0;
}
.contact input[type=radio],
.contact input[type=text],
.contact select,
.contact textarea {
    border: 1px solid #666;
    border-radius: 4px;
    font-size: 15px;
}
.contact .mailform label {
    white-space: nowrap;
    float: left;
}
.contact .mailform input,
.contact .mailform select {
    padding: 5px;
    margin: 0 5px 0 2px;
}
.contact .mailform textarea{
    width: 96%;
    padding: 2%;
    height: 120px;
    overflow: auto;
    vertical-align: top;
}
.contact .mailform #name {
    width: 50%;
}
.contact .mailform #old {
    width: 50px;
}
.contact .mailform #email {
    width: 80%;
}
.contact .mailform #emailc {
    width: 80%;
}
.contact .contact .button {
    width: 230px;
    overflow: hidden;
    margin: 0 auto 30px;
    text-align: center;
}
.contact .contact .button p {
    overflow: hidden;
    display: block;
    width: 230px;
    float: left;
    padding: 0 0 10px;
    text-align: center;
}
.contact .button a {
    display: inline-block;
}
.contact .button input,
.contact .button a {
    display: block;
    width: 230px;
    text-align: center;
    margin: 0 auto;
    padding: 15px 0;
    font-size: 120%;
    color: #fff;
    background: #F090B4/*#0372e4*/;
    border-radius: 6px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border: none;
    outline: none;
    transition: all .3s;
    cursor: pointer;
}
.contact .button input:hover {
    opacity: 0.7;
}
.contact .button input + input {
    margin-top: 10px;
}
.contact .error {
    color: #c00;
    line-height: 170%;
    padding: 30px 0;
    margin: 0 0 30px;
    border-top: 1px dashed #c00;
    border-bottom: 1px dashed #c00;
}
.contact .errortext {
    color: #c00;
}
    @media screen and (max-width:768px) {
        .contact .mailform th {
            overflow: hidden;
            display: block;
            width: 100%;
            padding: 10px 2%;
            border-right: 0;
        }
        .contact .mailform td {
            display: block;
            width: 100%;
            padding: 12px 2%;
        }
    }

/*追加20190918*/
/* list_point */
.cont h3 span,
.sec_cont .list02 dt span {
	padding: 4px 5px 3px;
	margin: 0 5px 0 0;
	color: #fff;
	font-size: 16px;
	font-weight: normal;
/* 	font-family: 'Allura', cursive; */
	font-family: 'Lucida Console';
	background: /*#099*/#03c;
}
.cont h3 .number2 span {
    display: table-cell;
    vertical-align: middle;
    width: 40px;
    text-align: center;
}
.cont h3 .number2 span {
    display: block;
    color: #fff;
    background: #F090B4/*#0188ae*/;
    height: 30px;
    line-height: 30px;
    padding: 0 5px;
}
.cont h3 .number2{
    float: left;
    clear: both;
    display: block;
    color: #fff;
    background: #5b5b5b;
    border-radius: 5px;
    padding: 2px 8px;
    font-size: 13px;
}
.flow .cont ol {
    border-top: 3px solid #D1C6C6/*#33a4c4*/;
    border-bottom: 32px solid #D1C6C6/*#33a4c4*/;
}

 .cont ol h3 {
    position: relative;
    border: none;
    margin: 25px -25px 0;
    z-index: 1;
}
 .cont ol h3 .ttl {
    color: #/*0188ae*/F4F4F4;
    font-weight: 800;
}
 .cont ol li {
    position: relative;
}
 .cont ol li::before {
    position: absolute;
    content: "";
    background: #D1C6C6/*#33a4c4*/;
    top: 0;
    left: -10px;
    width: 12px;
    height: 100%;
}
 .cont ol li::after {
    position: absolute;
    content: "";
    border-top: solid 16px #D1C6C6/*#33a4c4*/;
    border-left: solid 13px transparent;
    border-right: solid 13px transparent;
    top: 95%;
    margin-top: -4px;
    left: -17px;
    background: #fff;
}
 .cont ol li:last-child::before,
 .cont ol li:last-child::after {
    content: none;
}
 .cont ol p {
    border-bottom: 1px solid #D1C6C6/*#33a4c4*/;
    padding: 30px 12px 40px 12px;
   /* margin: 0 0px 0px 74px;*/
}
.cont p.marker {
	padding: 10px;
	margin: 0 0 20px;
	border: 1px dotted #000;
	background: #f2f2f2;
}

.cont img {
	max-width: 100%;
	width : auto;
	height: auto;
}

/*まで*/