@charset "utf-8";

/*------------------------------------------------------------------------------
  font
------------------------------------------------------------------------------*/

@font-face {
    font-family: 'gothic-bold';
    src: url('../font/gothicb.eot');
    src: local('gothic'), url('../font/gothicb.woff') format('woff'), url('../font/gothicb.ttf') format('truetype');
}


/*------------------------------------------------------------------------------
  reset
------------------------------------------------------------------------------*/

body {
    background: #fff;
    margin: 0;
    min-width: 1300px;
}

.Main {
    color: #333;
    background: #fff;
    font-size: 14px;
    line-height: 1.6;
    word-break: break-all;
}

.Main *,
.Main *:before,
.Main *:after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

img {
    border: 0;
    margin: 0;
    vertical-align: top;
    max-width: 100%;
}

p {
    margin: 0;
    padding: 0;
}

.Main a {
    color: #333;
    text-decoration: none;
}

.Main a:link,
.Main a:visited {
    color: #333;
}

::selection {
    background: #ffeece;
}

::-moz-selection {
    background: #ffeece;
}

input[type="submit"],
input[type="text"],
select,
textarea,
button {
    -moz-appearance: none;
    -webkit-appearance: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    outline: none;
    border: none;
}

select::-ms-expand {
    display: none;
}

textarea {
    resize: vertical;
}

button {
    background: none;
    border: none;
    cursor: pointer;
}
sub{
    vertical-align: super;
}
label {
    cursor: pointer;
}

table {
    border-collapse: collapse;
}

ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: 14px;
    font-weight: 500;
    margin: 0;
    padding: 0;
}

.outer-block {
    min-width: 1300px;
    counter-reset: qNum;
}

.inner-block {
    margin: 0 auto;
    padding: 60px 0;
    position: relative;
    width: 1200px;
}

.ib {
    display: inline-block;
}

.pc {
    display: block !important;
}

.pc-ib {
    display: inline-block !important;
}

.sp {
    display: none !important;
}

.sp-ib {
    display: none !important;
}

/* transition
----------------------------------------*/

@media screen and (min-width: 770px) {
    a,
    a:before,
    a:after,
    button,
    .common-btn .btn,
    .price-list li .jobtype,
    .voice-list li .img img,
    .voice-list li .voice-ttl,
    .column-list li .column-ttl,
    #pagetop span {
        -webkit-transition: 0.2s ease-in-out;
        transition: 0.2s ease-in-out;
        -webkit-transition-property: background, border, border-radius, box-shadow, color, letter-spacing, transform, position, opacity, filter, fill;
        transition-property: background, border, border-radius, box-shadow, color, letter-spacing, transform, position, opacity, filter, fill;
    }
}

/*------------------------------------------------------------------------------
  common-parts
------------------------------------------------------------------------------*/

/* sp-link
----------------------------------------*/

@media screen and (min-width: 770px) {
    .sp-link {
        cursor: default;
        pointer-events: none;
    }
}

/* zoom
----------------------------------------*/

.zoom {
    display: inline-block;
    position: relative;
}

.zoom::before {
    background: url("/images/img-common/ico_zoom.svg") no-repeat center center / 100% 100%;
    content: "";
    display: block;
    opacity: 0.8;
    position: absolute;
    bottom: 3px;
    right: 3px;
    width: 25px;
    height: 25px;
}

/* sp-zoom
----------------------------------------*/

@media screen and (min-width: 770px) {
    .sp-zoom {
        cursor: default;
        pointer-events: none;
    }
}

/* txt
----------------------------------------*/

.lead-txt {
    font-size: 18px;
    margin-bottom: 55px;
    text-align: center;
}

.sub-txt {
    font-size: 14px;
    text-align: center;
    padding-bottom: 10px;
}

.txt-note {
    font-size: 16px;
    line-height: 1.6;
    margin-top: 10px;
}

.txt-note a {
    text-decoration: underline;
}

.txt-note a:hover {
    text-decoration: none;
}

.txt-bold {
    font-weight: bold;
}

.txt-red {
    color: #ff0000;
}

.txt-orange {
    color: #ff9933;
}

.ind {
    padding-left: 2em;
    text-indent: -2em;
}


/* btn
----------------------------------------*/

.common-btn {
    text-align: center;
}

.common-btn .btn {
    background: url("/images/img-common/arrow_right.svg") no-repeat right 30px center #ff9933;
    border-radius: 4px;
    color: #fff;
    display: inline-block;
    font-weight: bold;
    line-height: 1.3;
    padding: 13px 15px 12px 10px;
    text-align: center;
    width: 222px;
}

@media screen and (min-width: 770px) {
    .common-btn .btn:hover,
    a:hover .common-btn .btn {
        background-color: #068cd6;
    }
}

/* table
----------------------------------------*/

.common-table {
    width: 100%;
}

.common-table th,
.common-table td {
    border: 1px solid #ccc;
    font-size: 18px;
    line-height: 1.4;
    padding: 20px 10px;
    text-align: center;
}

.common-table thead th {
    background: #fffbea;
    line-height: 1.2;
    padding: 16px 10px 12px;
}

.common-table .num {
    font-size: 24px;
}

/*------------------------------------------------------------------------------
  footer
------------------------------------------------------------------------------*/

@media screen and (min-width: 770px) {
    .st-NavTop {
        width: 1000px;
    }
}

.st-NavTop {
    margin: -40px auto 0;
}

.st-NavTop a,
.st-NavTop a:after {
    transition: none;
}

.st-NavTop a {
    cursor: pointer;
}


/* pagetop
----------------------------------------*/

#pagetop {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 100;
}

#pagetop span {
    background-image: url("/images/img-common/arrow_top.svg");
    background-repeat: no-repeat;
    background-position: center 10px;
    background-size: 10px 6px;
    background-color: #068cd6;
    border-radius: 50%;
    color: #fff;
    display: block;
    font-size: 14px;
    font-weight: bold;
    padding-top: 23px;
    text-align: center;
    width: 60px;
    height: 60px;
    cursor: pointer;
}

@media screen and (min-width: 770px) {
    #pagetop span:hover {
        box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.15);
        -webkit-transform: translateY(-2px);
        transform: translateY(-2px);
    }
}

/* contents-block
----------------------------------------*/

.contents-block {
    background: #e0f7ff;
}

.contents-block .ttl {
    background: #068cd6;
    border-radius: 0 0 20px 20px;
    line-height: 1;
    margin: auto;
    padding: 28px 30px;
    position: relative;
    top: -60px;
    text-align: center;
    width: 900px;
}

.contents-block .inner-block {
    padding: 60px 0 100px;
}

.contents-block .ttl img {
    width: 724px;
}

.contents-list {
    font-size: 0;
    text-align: center;
}

@media screen and (min-width: 770px) {
    .contents-list li {
        display: inline-block;
        vertical-align: bottom;
        width: 216px;
    }

    .contents-list li:not(:nth-child(5n)) {
        margin-right: 30px;
    }
}

.contents-list li .copy {
    color: #068cd6;
    display: block;
    font-size: 15px;
    font-weight: bold;
    line-height: 1.3;
    margin-bottom: 12px;
    position: relative;
    text-align: center;
    vertical-align: bottom;
}

.contents-list li .copy::before,
.contents-list li .copy::after {
    background: #53c4f1;
    content: "";
    display: block;
    position: absolute;
    bottom: -3px;
    width: 2px;
    height: 18px;
}

.contents-list li .copy::before {
    left: -2px;
    -webkit-transform: rotate(-30deg);
    transform: rotate(-30deg);
}

.contents-list li .copy::after {
    right: -2px;
    -webkit-transform: rotate(30deg);
    transform: rotate(30deg);
}

.contents-list li .bnr {
    background: #fff;
    border-radius: 4px;
    display: block;
    overflow: hidden;
    position: relative;
}

.contents-list li .bnr::before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 20px 20px;
    border-color: transparent transparent #068dd6 transparent;
    display: inline-block;
    position: absolute;
    bottom: 0;
    right: 0;
}

.contents-list li .bnr::after {
    border: 0 solid transparent;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

@media screen and (min-width: 770px) {
    .contents-list li .bnr:hover::before {
        border-color: transparent transparent #ff9933 transparent;
    }

    .contents-list li .bnr:hover::after {
        border-width: 3px;
        border-color: #ff9933;
    }
}

/*------------------------------------------------------------------------------
  top
------------------------------------------------------------------------------*/

/* page-nav
----------------------------------------*/

.page-nav {
    background: #3dbded;
    height: 120px;
}

.page-nav ul {
    font-size: 0;
    text-align: center;
}

.page-nav ul li {
    display: inline-block;
}

.page-nav ul li a {
    display: block;
    height: 120px;
    color: #fff !important;
    font-size: 18px;
    padding: 34px 0;
    line-height: 1.3;
    width: 300px;
    position: relative;
}

@media screen and (min-width: 770px) {
    .page-nav ul li a::before {
        content: "";
        position: absolute;
        width: 1px;
        height: 40px;
        background: #fff;
        top: 40px;
        left: 0;
    }
    .page-nav ul li:last-child a::after {
        content: "";
        position: absolute;
        width: 1px;
        height: 40px;
        background: #fff;
        top: 40px;
        right: 0;
    }
    .page-nav ul li a:hover {
        background: #068cd6;
    }
}

.page-nav ul li a .txt-small {
    font-size: 16px;
}



/* mv-block
----------------------------------------*/

.mv-block {
    background: #e0f7ff;
}

.mv-block .inner-block {
    text-align: center;
    padding: 60px 0;
}

.mv-block .ttl {
    margin-top: 30px;
}

.mv-block .ttl span {
    display: block;
}

.mv-block .ttl .main {
    margin-top: 15px;
    padding: 35px 0 55px;
    position: relative;
}

.mv-block .ttl .main::before,
.mv-block .ttl .main::after {
    background: #ff7200;
    content: "";
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 5px;
}

.mv-block .ttl .main::before {
    top: 0;
}

.mv-block .ttl .main::after {
    bottom: 0;
}

.mv-block .sub-ttl {
    width: 730px;
}

.mv-block .img {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 1;
}

.mv-block .interview-box {
    background: #068cd6;
    text-align: center;
}

@media screen and (min-width: 770px) {
    .mv-block .interview-box {
        position: absolute;
        top: 0;
        right: 0;
        width: 430px;
        height: 100%;
    }
}

.mv-block .interview-box .box-ttl {
    margin: 40px 0 20px;
}

.mv-block .interview-box .txt {
    margin: 40px 30px 0;
}

.mv-block .interview-box .note {
    color: #fff;
    font-size: 11px;
    margin: 30px 30px 0;
    text-align: right;
}

.mv-block .chara01,
.mv-block .chara02 {
    position: absolute;
    z-index: 2;
}

.mv-block .chara01 {
    top: 70px;
    left: -40px;
}

.mv-block .chara02 {
    top: 416px;
    right: -50px;
}

/* reason-block
----------------------------------------*/

.reason-block .ttl {
    line-height: 1;
    margin-bottom: 60px;
    text-align: center;
}

.reason-block .ttl span {
    display: inline-block;
}

.reason-block .ttl .main {
    margin-top: 20px;
}

.reason-block .lead-txt {
    margin-bottom: 15px;
}

.reason-block .movie-box {
    margin: 55px auto 100px;
    width: 840px;
    position: relative;
}

@media screen and (min-width: 770px) {
    .reason-block .movie-box img {
        width: 100%;
    }
}

.reason-block .movie-box a {
    display: inline-block
}

.reason-block .movie-box a::before {
    border: 20px solid #008cd6;
    content: "";
    display: block;
    pointer-events: none;
    position: absolute;
    width: 100%;
    height: 100%;
}

.reason-block .movie-box a::after {
    background: url("/images/img-common/ico_play.png") no-repeat center center;
    background-size: 104px 104px;
    border-radius: 50%;
    content: "";
    display: block;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 102px;
    height: 102px;
}

@media screen and (min-width: 770px) {
    .reason-block .movie-box a:hover::after {
        box-shadow: 0 0 0 10px rgba(255, 255, 255, 0.3);
        -webkit-transform: scale(0.9);
        transform: scale(0.9);
    }
}

.reason-block .movie-box + .note {
    margin-top: 1em;
    text-align: center;
}

/* qa-block
----------------------------------------*/

.qa-block {
    background: url("/images/img-top/qa_bg.png") 40% top #e0f7ff;
}

.qa-block .ttl {
    line-height: 1;
    position: relative;
    text-align: center;
}

.qa-block .ttl span {
    display: block;
}

.qa-block .ttl .main {
    margin: 30px 0 20px;
}

.qa-block .ttl-chara {
    margin: 10px 0 30px;
    text-align: center;
}

@media screen and (min-width: 770px) {
    .qa-block .balloon01,
    .qa-block .balloon02 {
        position: absolute;
    }
    .qa-block .balloon01 {
        top: -80px;
        left: 60px;
    }
    .qa-block .balloon02 {
        top: -80px;
        right: 60px;
    }
}

.qa-block .sub-ttl {
    color: #ff9933;
    font-size: 26px;
    font-weight: bold;
    line-height: 1.3;
    margin-bottom: 30px;
    text-align: center;
}

.qa-block .sub-ttl .small {
    font-size: 18px;
}

.qa-box {
    border-radius: 10px;
}

.qa-box + .qa-box {
    margin-top: 40px;
}

.qa-box .qa-ttl {
    background: #068cd6;
    padding: 30px;
    border-radius: 10px 10px 0 0;
}

@media screen and (min-width: 770px) {
    .qa-box .qa-ttl {
        display: table;
        width: 100%;
    }

    .qa-box .qa-ttl .question,
    .qa-box .qa-ttl .desc {
        display: table-cell;
        vertical-align: middle;
    }

    .qa-box .qa-ttl .desc {
        width: 550px;
    }
}

.qa-box .qa-ttl .question {
    color: #fff;
    font-size: 30px;
    font-weight: bold;
}

.qa-box .qa-ttl .question .en {
    counter-increment: qNum;
    display: inline-block;
    margin-right: 0.3em;
    font-family: "gothic-bold";
    font-size: 48px;
    line-height: 1;
}

.qa-box .qa-ttl .question .en::after {
    content: counter(qNum);
}

.qa-box .qa-ttl .desc {
    background: #fff;
    border-radius: 5px;
    color: #068cd6;
    font-size: 14px;
    padding: 15px 20px;
    font-weight: bold;
}

.qa-box .qa-ttl .desc a {
    color: #068cd6;
    text-decoration: underline;
}

.qa-box .qa-ttl .desc a:hover {
    text-decoration: none;
}

.qa-box .txt-wrap {
    background: #fff;
    padding: 30px;
    border-radius: 0 0 10px 10px;
}


@media screen and (min-width: 770px) {
    .qa-box.qa03 .txt-wrap {
        padding: 30px 30px 50px;
    }

    .qa-box .txt-wrap > .info {
        float: left;
        width: 710px;
    }

    .qa-box .txt-wrap > .desc {
        float: right;
        width: 400px;
    }
}

.qa-box .point-box {
    position: relative;
}

.qa-box * + .point-box {
    margin-top: 30px;
}

.qa-box .point-box .img {
    position: absolute;
    top: -20px;
    right: 30px;
}

.qa-box .point-box .point-ttl {
    background: url("/images/img-common/ico_point.svg") no-repeat 28px 48% #ff9933;
    border-radius: 10px 10px 0 0;
    color: #fff;
    font-size: 24px;
    font-family: "gothic-bold";
    padding: 18px 15px 20px 72px;
}

.qa-box .point-txt {
    background: #fffbea;
    border: 2px solid #ff9933;
    border-top-width: 0;
    border-radius: 0 0 10px 10px;
    color: #ff9933;
    font-size: 18px;
    font-weight: bold;
    padding: 40px 26px 30px;
}

@media screen and (min-width: 770px) {
    .qa-box .point-box.type02 {
        display: table;
        width: 100%;
    }

    .qa-box .point-box.type02 .point-ttl,
    .qa-box .point-box.type02 .point-txt {
        display: table-cell;
        vertical-align: middle;
    }

    .qa-box .point-box.type02 .point-ttl {
        border-radius: 10px 0 0 10px;
        width: 200px;
    }

    .qa-box .point-box.type02 .point-txt {
        border-radius: 0 10px 10px 0;
        border-top-width: 2px;
        border-left-width: 0;
        padding: 20px 170px 20px 30px;
    }
}

.qa-box.qa01 .graph {
    margin-top: -40px;
    position: relative;
}

.qa-box.qa05 + .txt-note {
    margin-top: 30px;
}

.rank-list {
    counter-reset: rank;
}

.rank-list li + li {
    margin-top: 10px;
}

.rank-list li {
    background: #fffbea;
    border-radius: 40px;
    display: table;
    font-weight: bold;
    line-height: 1.3;
    padding-left: 47px;
    position: relative;
    text-align: center;
    width: 100%;
}

.rank-list li .inn {
    display: table-cell;
    padding-top: 2px;
    vertical-align: middle;
    height: 78px;
    padding-right: 20px;
}

.rank-list li::before {
    color: #fff;
    counter-increment: rank;
    content: counter(rank);
    display: inline-block;
    font-size: 20px;
    font-family: "gothic-bold";
    margin: auto;
    text-align: center;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 30px;
}

.info .rank-list li.adjust01::before {
    content: "1";
}

.info .rank-list li.adjust02::before {
    content: "2";
}

.rank-list li:nth-child(1)::before,
.rank-list li:nth-child(2)::before,
.rank-list li:nth-child(3)::before {
    background: no-repeat center center;
    background-size: 100% 100%;
    padding-top: 12px;
    top: -8px;
    left: 22px;
    width: 54px;
    height: 43px;
}

.rank-list li:nth-child(1)::before,
.info .rank-list li.adjust01::before{
    background-image: url("/images/img-common/ico_rank01.svg");
}

.rank-list li:nth-child(2)::before,
.info .rank-list li.adjust02::before {
    background-image: url("/images/img-common/ico_rank02.svg");
}

.rank-list li:nth-child(3)::before {
    background-image: url("/images/img-common/ico_rank03.svg");
}

.rank-list li:nth-child(n + 4) {
    background: #f9f9f9;
}

.rank-list li:nth-child(n + 4) .inn {
    height: 62px;
}

.rank-list li:nth-child(n + 4)::before {
    background: #54c3f1;
    border-radius: 50%;
    line-height: 40px;
    width: 40px;
    height: 40px;
}

.rank-list li .large {
    font-size: 24px;
}

.rank-list li .middle {
    font-size: 17px;
}

.rank-list li .small {
    font-size: 15px;
}

.rank-list li:nth-child(n + 4) .large {
    font-size: 20px;
}

.rank-list li:nth-child(1),
.info .rank-list li.adjust01{
    color: #caa715;
}

.rank-list li:nth-child(2),
.info .rank-list li.adjust02 {
    color: #7a7a7a;
}

.rank-list li:nth-child(3) {
    color: #b57748;
}

.rank-list li:nth-child(n + 4) {
    color: #54c3f1;
}

.rank-list li .per {
    position: absolute;
    top: 31px;
    right: 15px;
    font-size: 16px;
}

@media screen and (min-width: 770px) {
    .price-list li {
        float: left;
        width: 360px;
    }

    .price-list li:not(:nth-child(3n)) {
        margin-right: 30px;
    }
}

.price-list li a {
    background: #fffbea;
    border-radius: 8px;
    display: block;
    padding: 30px;
}

.price-list li .jobtype {
    color: #ff9933;
    font-size: 26px;
    font-weight: bold;
    line-height: 1.3;
    text-align: center;
}

.price-list li .jobtype .small {
    display: block;
    font-size: 14px;
}

.price-list li .chara {
    margin: 25px auto 20px;
    width: 200px;
}

.price-list li .op {
    font-size: 14px;
    margin-bottom: 20px;
    text-align: center;
}

@media screen and (min-width: 770px) {
    .price-list li .common-btn .btn {
        font-size: 18px;
        padding: 18px 15px 17px 10px;
        width: 100%;
    }
    .price-list li .common-btn .btn.v01 {
        background-color: #54c3f1;
    }
    .price-list li .common-btn .btn.v02 {
        background-color: #97e494;
    }
    .price-list li .common-btn .btn.v03 {
        background-color: #f3d664;
    }
    .price-list li a:hover {
        box-shadow: 0px 5px 20px 0px rgba(0, 0, 0, 0.1);
        -webkit-transform: translateY(-3px);
        transform: translateY(-3px);
    }
}

/* voice-block
----------------------------------------*/

.voice-block {
    background: #e0f7ff;
    margin-top: -20px;
    padding-bottom: 160px;
}

.voice-block .inner-block {
    background: #fff;
    border-radius: 10px;
    padding: 40px 30px;
}

.voice-block .ttl {
    line-height: 1;
    margin-bottom: 60px;
    text-align: center;
}

.voice-block .ttl span {
    display: block;
}

.voice-block .ttl .sub {
    margin-top: 30px;
}

@media screen and (min-width: 770px) {
    .voice-block .graph01,
    .voice-block .graph02 {
        position: absolute;
    }
    .voice-block .graph01 {
        top: 84px;
        left: 40px;
    }
    .voice-block .graph02 {
        top: 63px;
        right: 40px;
    }
}

@media screen and (min-width: 770px) {
    .voice-list li {
        float: left;
        width: 550px;
    }

    .voice-list li:nth-child(even) {
        float: right;
    }

    .voice-list li .img {
        float: left;
        width: 200px;
    }

    .voice-list li .txt-wrap {
        float: right;
        padding-left: 30px;
        padding-bottom: 52px;
        position: relative;
        width: -webkit-calc(100% - 200px);
        width: calc(100% - 200px);
    }

    .voice-list li .common-btn {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
    }
}

.voice-list li a {
    display: block;
}

.voice-list li .img {
    position: relative;
}

.voice-list li .img img {
    border-radius: 8px;
}

.voice-list li .img::before {
    background: no-repeat center center;
    background-size: 100% 100%;
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 90px;
    height: 90px;
    z-index: 1;
}

.voice-list li a[href*="01"] .img::before {
    background-image: url("/images/img-top/voice_ribbon01.svg");
}

.voice-list li a[href*="02"] .img::before {
    background-image: url("/images/img-top/voice_ribbon02.svg");
}

.voice-list li .voice-ttl {
    color: #ff9933;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.3;
    margin-bottom: 15px;
}

@media screen and (min-width: 770px) {
    .voice-list li a:hover .voice-ttl {
        color: #068cd6;
    }
}

/* column-block
----------------------------------------*/

.column-block {
    background: #fffbea;
    padding-bottom: 50px;
}

.column-block .ttl {
    line-height: 1;
    margin-top: -160px;
    margin-bottom: 40px;
    position: relative;
    text-align: center;
}

.column-block .ttl span {
    display: inline-block;
}

.column-contents {
    background: #fff;
    border: 2px solid #ff9933;
    border-radius: 10px;
    line-height: 1.4;
    margin: 0 auto 40px;
    padding: 25px 30px;
    position: relative;
}

.column-contents .contents-ttl {
    text-align: center;
    position: absolute;
    top: -10px;
    left: 0;
    width: 100%;
}

.column-contents .contents-ttl .inn {
    background: rgb(255, 251, 234);
    background: -moz-linear-gradient(top, rgba(255, 251, 234, 1) 0%, rgba(255, 251, 234, 1) 50%, rgba(255, 255, 255, 1) 50%, rgba(255, 255, 255, 1) 100%);
    background: -webkit-linear-gradient(top, rgba(255, 251, 234, 1) 0%, rgba(255, 251, 234, 1) 50%, rgba(255, 255, 255, 1) 50%, rgba(255, 255, 255, 1) 100%);
    background: linear-gradient(to bottom, rgba(255, 251, 234, 1) 0%, rgba(255, 251, 234, 1) 50%, rgba(255, 255, 255, 1) 50%, rgba(255, 255, 255, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fffbea', endColorstr='#ffffff', GradientType=0);

    color: #ff9933;
    display: inline-block;
    font-family: "gothic-bold";
    font-size: 18px;
    padding: 0 6px;
    position: relative;
    line-height: 1;
}

.column-contents li + li {
    margin-top: 5px;
}

@media screen and (min-width: 770px) {
    .column-contents {
        width: 570px;
    }

    .column-contents li .txt01,
    .column-contents li .txt02 {
        display: inline-block;
        vertical-align: middle;
    }

    .column-contents li .txt01 {
        width: 340px;
    }
}

.column-contents li .txt01,
.column-contents li .txt02 {
    color: #068cd6;
    font-size: 16px;
    font-weight: bold;
}

.column-list li + li {
    margin-top: 10px;
}

.column-list li a {
    background: #fff;
    box-shadow: 0px 2px 0px 0px rgba(0, 0, 0, 0.05);
    border-radius: 10px;
    display: block;
    padding: 20px 50px 20px 90px;
    position: relative;
}

.column-list li a .column-ttl::before {
    /* background: url("../img/top/column_ribbon.svg") no-repeat center center; */
    background: url("/images/img-top/column_ribbon.svg") no-repeat center center;
    background-size: 100% 100%;
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 90px;
    height: 90px;
    z-index: 1;
}

.column-list li a::before {
    background: url("/images/img-common/arrow_right.svg") no-repeat center center #ff9933;
    border-radius: 0 10px 10px 0;
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 30px;
    height: 100%;
}

.column-list li .column-ttl {
    color: #ff9933;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.3;
    margin-bottom: 10px;
}

@media screen and (min-width: 770px) {
    .column-list li a:hover {
        box-shadow: 0px 5px 20px 0px rgba(0, 0, 0, 0.1);
        -webkit-transform: translateY(-3px);
        transform: translateY(-3px);
    }
}


/* consider-block
----------------------------------------*/

.consider-block {
    background: url("/images/img-top/consider_bg.jpg");
    background-size: cover;
}

.consider-block .ttl {
    line-height: 1;
    margin-top: -110px;
    margin-bottom: 40px;
    position: relative;
    text-align: center;
}

/*------------------------------------------------------------------------------
  relay column
------------------------------------------------------------------------------*/

.column-title-block {
    background: #fffbea;
    padding: 60px 0 0;
}

.column-title-block .inner-block {
    padding: 0;
    position: relative;
}

.btn-back {
    border: 1px solid #efefef;
    width: 250px;
    height: 60px;
    background: #fff;
    position: absolute;
    top: -40px;
    left: 0;
    border-radius: 4px;
    box-shadow: 0 2px rgba(242, 238, 222, 1);
}

.btn-back a {
    font-size: 15px;
    line-height: 1.2;
    font-weight: bold;
    color: #ff9933 !important;
    width: 250px;
    height: 60px;
    display: block;
    padding: 13px 0 13px 10px;
    text-align: center;
    position: relative;
}

.btn-back a::before {
    position: absolute;
    content: "";
    background: url("/images/img-common/ico_left_org.svg") no-repeat;
    width: 8px;
    height: 12px;
    top: 24px;
    left: 15px;
}

@media screen and (min-width: 770px) {
    .btn-back a:hover {
        color: #068cd6 !important;
    }

    .btn-back a:hover::before {
        background: url("/images/img-common/ico_left_blue.svg") no-repeat;
    }
}

.btn-back .txt-small {
    font-size: 13px;
}

.column-title-block .ttl {
    font-size: 40px;
    font-weight: bold;
    line-height: 1.2;
    text-align: center;
    padding-bottom: 44px;
    color: #ff9933;
}

.column-title-block .txt {
    font-size: 12px;
    text-align: center;
    color: #7a7a7a;
    padding-bottom: 6px;
}

@media screen and (min-width: 770px) {
    .column-title-block .illust-wrap img {
        position: absolute;
        bottom: 0;
    }
    .column-title-block .illust01 {
        left: 0;
    }
    .column-title-block .illust02 {
        right: 0;
    }
    .column02 .column-title-block .illust01 {
        left: 34px;
        bottom: -54px;
    }
    .column02 .column-title-block .illust02 {
        bottom: 36px;
    }
    .column03 .column-title-block .illust01 {
        left: 210px;
    }
    .column03 .column-title-block .illust02 {
        right: 210px;
    }
    .column04 .column-title-block .illust01 {
        bottom: -55px;
        left: 30px;
    }
    .column04 .column-title-block .illust02 {
        bottom: -55px;
        right: 30px;
    }
    .column06 .column-title-block .illust01 {
        left: 58px;
    }
    .column06 .column-title-block .illust02 {
        right: 74px;
    }
    .column08 .column-title-block .illust02 {
        right: 38px;
    }
}

.ribbon-ttl {
    width: 420px;
    height: 72px;
    color: #fff;
    line-height: 64px;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    margin: 0 auto 40px;
}

.column-title-block .ribbon-ttl {
    /* background: url("../img/column/ribbon_orange.png") no-repeat; */
    background: url("/images/column-img/ribbon_orange.png") no-repeat;
}

.professor-block {
    background: #ff9933;
}

.professor-block .profile-box {
    background: #fff;
    padding: 30px 30px 50px;
    border-radius: 10px;
    position: relative;
}

.professor-block .profile-box .ttl {
    color: #ff9933;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.2;
}

.professor-block .profile-box .txt-big {
    font-size: 24px;
}

.professor-block .profile-box .txt-sml {
    font-size: 14px;
}

.professor-block .profile-box .sub-ttl {
    font-size: 18px;
    color: #ff9933;
    font-weight: bold;
    text-align: center;
}

.professor-block .profile-box .ttl-profile {
    padding: 0 0 16px 266px;
}

.professor-block .profile-box .ttl-profile .txt {
    color: #ff9933;
    font-size: 24px;
    font-weight: bold;
    font-family: "gothic-bold";
    letter-spacing: 0.05em;
    padding-left: 34px;
    position: relative;
    line-height: 1;
}

.professor-block .profile-box .ttl-profile .txt::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 1px;
    width: 20px;
    height: 20px;
    background: url("/images/img-common/ico_human.svg") no-repeat;
}

@media screen and (min-width: 770px) {
    .professor-block .profile-box .img-profile {
        float: left;
        width: 236px;
        height: 230px;
        border-right: 2px solid #ff9933;
        padding: 0 30px 0 30px;
    }
    .column01 .professor-block .profile-box .img-profile {
        height: 250px;
    }
    .column03 .professor-block .profile-box .img-profile,
    .column05 .professor-block .profile-box .img-profile {
        height: 215px;
    }
    .column04 .professor-block .profile-box .img-profile {
        height: 265px;
    }
    .consideration .professor-block .profile-box .img-profile{
        height: 255px;
    }
    .professor-block .profile-box .txt {
        padding-left: 266px;
    }
    .professor-block .profile-box .ttl {
        padding-top: 20px;
    }
}

.professor-block .profile-box .img-profile img {
    border-radius: 50%;
    width: 144px;
}

.article-block h2 {
    font-size: 32px;
    padding: 60px 0;
    text-align: justify;
}

.article-block p + h2 {
    margin-top: 40px;
}

.article-block p {
    font-size: 16px;
    line-height: 2;
}

.article-block p:not(.txt-small) {
    text-align: justify;
}

.profile-box p + p,
.article-block p + p {
    padding-top: 2em;
}

.article-block ol.listFormat_1{
    list-style: none;
    background: #e0f7ff;
    padding: 1em 2em;
    border-radius: 10px;
    margin:  2em 0;
}
.article-block ol.listFormat_1 li{
    font-size: 16px;
    padding: 1em 0;
}

.article-block ol.listFormat_1 li h3{
    font-size: 130%;
    padding-bottom: 1em;
    color: #068cd6;
}

.column09 .article-block ol.listFormat_1 li, .column10 .article-block ol.listFormat_1 li{
    max-width: 1000px;
    margin: 0 auto;
}
.column09 .article-block ol.listFormat_1 li h3, .column10 .article-block ol.listFormat_1 h3{
    font-weight: bold;
    padding-bottom: 0;
}

a .cmn-Wysiwyg1_LinkIcons{vertical-align: baseline;}

.Main .profile-box a,
.Main .article-block a,
.Main .slider-block a,
.Main.consideration .cont01 .top-cont .bottom-area a,
.Main.consideration .cont02 .txt-block .description a {
    color: #068cd6;
    text-decoration: underline;
}

.article-block .txt-c{
    font-size: 18px;
    text-align: center;
}
.article-block .discussion h2{
    text-align: center;
}

.article-block .introduction{
    display: flex;
    /* -ms-flex-pack: distribute;
     justify-content: space-around;*/
    /*-webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;*/
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.article-block .introduction {
    margin: 50px;
}
.article-block .introduction .member_img {
    /*width: 30%;*/
    width: 26%;
}
.article-block .introduction .comment.side{
    /*width: 60%;*/
    /*width: 64%;*/
    width: 50%;
    /*margin-top: 10px;*/
    margin-top: 0;
}

.article-block .discussion .comment .member{
    line-height: 1;
    text-align: center;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100px;
    height: 100px;
    position: absolute;
    top: -12px;
    left: -140px;
    z-index: 2;
}
.article-block .discussion .comment .member-1{
    line-height: 1;
    text-align: center;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100px;
    height: 100px;
    position: absolute;
    top: 0;
    left: -110px;
    z-index: 2;
}

.article-block .discussion .comment{
    margin: 50px auto 0;
}
.article-block .discussion .comment.side-2 {
    width: 900px;
    margin: 50px auto 0;
}
.article-block .discussion .comment.side-2 .member{
    position: absolute;
    top: -12px;
    left: auto;
    right: -140px;
    z-index: 2;
}
.article-block .member img,
.article-block .member-1 img{
    width: 100px;
}

.discussion .comment.side::before{
    width: auto;
    height: auto;
    content: '';
    position: absolute;
    top: 24px;
    left: -24px;
    bottom: auto;
    font-size: 0;
    border-top: 16px solid transparent;
    border-bottom: 16px solid transparent;
    border-right: 24px solid #e0f7ff;
    background:none;
}
.discussion .introduction .comment.side::before{
    display: none;
}
.discussion .comment.side-2::before{
    width: auto;
    height: auto;
    content: '';
    position: absolute;
    top: 24px;
    right: -24px;
    left: auto;
    bottom: auto;
    font-size: 0;
    border-top: 16px solid transparent;
    border-bottom: 16px solid transparent;
    border-left: 24px solid #e0f7ff;
    background:none;
}
.profile_area{
    margin-bottom: 60px;
}
.profile{
    padding-left: 1em;
}
.profile_title{
    font-weight: bold;
}
.profile_info{}



@media screen and (min-width: 770px) {
    .Main .profile-box a:hover,
    .Main .article-block a:hover,
    .Main .slider-block a:hover,
    .Main.consideration .cont01 .top-cont .bottom-area a:hover,
    .Main.consideration .cont02 .txt-block .description a:hover {
        text-decoration: none;
    }
}

.article-img {
    padding: 40px 0;
    text-align: center;
    border: 1px solid #ebebeb;
    margin: 60px 0 0;
}
.article-img img,.member_img img{border-radius: 10px;}
.article-img + p {
    margin-top: 60px;
}

.article-img + .txt-small {
    margin-top: 20px;
}
.article-img.colum-8-1-img img{
    width: 56%;
}
.article-img.colum-8-2-img img{
    width: 56%;
}

.article-block .txt-small {
    font-size: 14px;
}

.txt-list-area {
    font-size: 0;
    padding: 30px 0;
}

.txt-list-area .txt-area,
.column-child-list {
    display: inline-block;
    vertical-align: middle;
    width: 50%;
    padding-right: 20px;
}

.adjust01 .txt-area {
    width: 75%;
}

.column-child-list {
    padding: 20px;
    border: solid 2px #068cd6;
    background-color: #e0f7ff;
}

.adjust01 .column-child-list {
    width: 25%;
    border: 0;
    background: #fff;
    padding: 0;
    text-align: center;
}

.column-child-list li {
    font-size: 14px;
}

.column-child-list li:nth-of-type(n + 2) {
    margin-top: 10px;
}


.column-child-list .ttl {
    line-height: 1.3;
    color: #068cd6;
    font-weight: bold;
    margin-bottom: 5px;
}

.sns-box {
    margin-top: 100px;
    text-align: center;
}

.sns-box a {
    position: relative;
    display: inline-block;
}

@media screen and (min-width: 770px) {
    .sns-box a::after {
        position: absolute;
        content: "";
        border: 0 solid transparent;
        border-radius: 50px;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
    .sns-box a:hover:after {
        border: 3px solid #068cd6;
    }
}

.sns-box a + a {
    margin-left: 40px;
}


/*
  専門家コラム一覧
----------------------------------------*/

.column-related-block {
    background: #fffbea;
}

.column-related-block .ttl {
    font-size: 36px;
    color: #ff9933;
    font-weight: bold;
    text-align: center;
    line-height: 1;
    margin-bottom: 60px;
}

.column-related-block .btn-back {
    position: static;
    margin-top: 40px;
}

/*------------------------------------------------------------------------------
  voice
------------------------------------------------------------------------------*/

.voice-mv-block {
    background: #fffbea;
}

.voice-mv-block .btn-back {
    top: -30px;
}

.voice-mv-block .mv-block01 {
    margin: 10px auto 20px;
}


@media screen and (min-width: 770px) {
    .voice-mv-block {
        padding-top: 50px;
    }
    .voice-mv-block .mv-block01 {
        margin-left: 180px;
        text-align: center;
        vertical-align: top;
        display: inline-block;
        width: 440px;
    }
    .voice-mv-block .mv-block02 {
        position: relative;
        margin: 30px auto 0;
    }
    .voice-mv-block .mv-block03 {
        display: inline-block;
        position: relative;
        margin-left: 66px;
    }
    .voice-mv-block .btn-back .txt-small {
        font-size: 13px;
        display: inline-block;
    }
}

.voice-mv-block .ribbon-ttl {
    background: no-repeat center top / contain;
    margin: 0 auto 24px;
}

.voice-mv-block.v01 .ribbon-ttl {
    background-image: url("/images/img-voice/ribbon_green.png");
}

.voice-mv-block.v02 .ribbon-ttl {
    background-image: url("/images/img-voice/ribbon_blue.png");
}

.voice-mv-block.v03 .ribbon-ttl {
    background-image: url("/images/img-voice/ribbon_yellow.png");
}

.voice-mv-block .main-ttl {
    font-size: 36px;
    color: #4a4a4a;
    font-weight: bold;
    line-height: 1.3;
}

.voice-mv-block .sub-ttl {
    font-size: 30px;
    font-weight: bold;
    line-height: 1.3;
    display: block;
}

.voice-mv-block.v01 .sub-ttl {
    color: #469d2c;
}

.voice-mv-block.v02 .sub-ttl {
    color: #068cd6;
}

.voice-mv-block.v03 .sub-ttl {
    color: #e69800;
}



.voice-mv-block .comment .txt-small {
    display: block;
    font-size: 18px;
    margin-top: 5px;
}

.voice-mv-block .box {
    background: #fff;
    font-size: 18px;
    position: relative;
    padding: 22px 30px;
    text-align: justify;
}



.voice-mv-block .comment.side {
    position: absolute;
    top: 26px;
    left: 210px;
    width: 300px;
    height: 150px;
    padding: 40px 0;
    text-align: center;
    margin: 0;
}



@media screen and (min-width: 770px) {
    .voice-mv-block.v02 .mv-block03 .comment.side,
    .voice-mv-block.v03 .mv-block03 .comment.side {
        padding: 22px 0;
    }
}

.voice-answer-block {
    background: #54c3f1;
}

.voice-answer-block .q-box {
    background: #fff;
    padding: 15px 30px 30px;
    border-radius: 10px;
}

.voice-answer-block .q-box + .q-box {
    margin-top: 40px;
}

.voice-mv-block .q-box .ttl,
.voice-answer-block .q-box .ttl {
    font-size: 30px;
    color: #068cd6;
    font-weight: bold;
    text-align: center;
    padding-bottom: 20px;
}

.voice-mv-block .q-box .ttl .txt-note,
.voice-answer-block .q-box .ttl .txt-note {
    display: inline-block;
    font-weight: normal;
}

.voice-answer-block .q-box .rank-box {
    background: #fffbea;
    border-radius: 40px;
    padding: 20px;
    text-align: center;
    font-size: 26px;
    font-weight: bold;
}

.voice-answer-block .q-box .rank-box + .rank-box {
    margin-top: 10px;
}

.voice-answer-block .q-box .answer-wide .rank-box {
    width: 710px
}

.voice-answer-block .q-box .en {
    display: inline-block;
    margin-right: 0.3em;
    font-family: "gothic-bold";
    font-size: 48px;
    line-height: 1;
}

.voice-answer-block .q-box .en::after {
    counter-increment: qNum;
    content: counter(qNum);
}

.voice-answer-block .a-box {
    border-top: 2px solid #068cd6;
}

.voice-answer-block .txt-note {
    display: block;
}

.voice-answer-block .a-box .top {
    margin: 30px 0 70px;
}

.voice-answer-block .a-box .top .graph .txt {
    padding-top: 10px;
}

.voice-answer-block .a-box .point .graph {
    margin: 0;
}

.voice-answer-block.v02 .a-box .point .graph {
    margin: 20px 0 0;
    padding-left: 0;
}

@media screen and (min-width: 770px) {
    .voice-answer-block .a-box .top.v03 {
        margin: 30px 0 150px;
    }
    .voice-answer-block .a-box .graph {
        display: inline-block;
        vertical-align: top;
        margin-left: 30px;
    }
    .voice-answer-block .a-box .point .graph.ct {
        width: 555px;
        text-align: center;
    }
    .voice-answer-block .a-box .right {
        width: 390px;
        display: inline-block;
    }
    .voice-answer-block .a-box .info {
        width: 520px;
        margin-top: 30px;
    }
    .voice-answer-block .a-box .top.v03 .graph {
        margin: 0 30px;
    }

}

.voice-answer-block .a-box .right .pointbox {
    border: 2px solid #ff9933;
    border-radius: 10px;
}

.voice-answer-block .a-box .right .comment {
    margin: 0;
}

.voice-answer-block .a-box .right .comment + .txt-note {
    margin-top: 40px;
    margin-right: 160px;
}


.voice-answer-block .a-box .right .pointbox .ttl {
    background: #ff9933;
    color: #fff;
    font-weight: bold;
    font-size: 24px;
    font-family: 'Century Gothic', CenturyGothic, AppleGothic, sans-serif;
    padding: 0;
    line-height: 64px;
    position: relative;
    border-radius: 5px 5px 0 0;
}

.voice-answer-block .a-box .right .pointbox .ttl::before {
    content: "";
    position: absolute;
    width: 36px;
    height: 40px;
    top: 10px;
    left: 100px;
    background: url("/images/img-voice/ico-point.svg") no-repeat;
}

.voice-answer-block .a-box .right .pointbox .txt {
    font-size: 18px;
    font-weight: bold;
    color: #ff9933;
    padding: 20px;
}


@media screen and (min-width: 770px) {
    .voice-answer-block .a-box .rank {
        display: inline-block;
        vertical-align: top;
        padding-left: 30px;
    }
    .voice-answer-block .a-box .comment {
        display: inline-block;
        margin-left: 140px;
        width: 390px;
    }
    .voice-answer-block .a-box .comment.v03 {
        margin-left: 130px;
    }
}

.voice-answer-block .sub-ttl {
    font-size: 18px;
    color: #ff9933;
    font-weight: bold;
    text-align: center;
    padding-top: 30px;
}


.comment::before {
    content: "";
    position: absolute;
    bottom: -36px;
    width: 36px;
    height: 37px;
    left: 160px;
    background: url("/images/img-voice/fukidashi.png") no-repeat;
}

.comment {
    background: #e0f7ff;
    border-radius: 10px;
    padding: 22px 30px;
    position: relative;
}
/*.introduction .comment {
    padding: 22px 30px 22px 65px;
}*/
.comment .txt {
    font-size: 18px;
    text-align: justify;
}


.voice-answer-block .middle {
    margin: 30px 0 70px;
}

.voice-answer-block .comment.side {
    width: 760px;
    margin: 40px 0 0 300px;
}

@media screen and (min-width: 770px) {
    .voice-answer-block .comment.side .chara {
        left: -150px;
        width: 110px;
        height: 136px;
        position: absolute;
        bottom: 20px;
        z-index: 2;
    }
    .voice-answer-block.v02 .comment.side .chara,
    .voice-answer-block.v03 .comment.side .chara {
        bottom: -20px;
    }
    .comment.side .chara {
        bottom: 24px;
        left: -180px;
        width: 134px;
        height: 143px;
    }

}

.comment.side {
    width: 900px; /*960px*/
    margin: 30px 0 0 180px;
}

.comment.side::before {
    left: -35px;
    bottom: 35px;
    width: 35px;
    background: url("/images/img-voice/balloon.svg") no-repeat;
    background-size: contain;
}



.comment .chara {
    width: 110px;
    height: 136px;
    position: absolute;
    bottom: -112px;
    right: 30px;
    z-index: 2;
}


.li-blue li {
    font-size: 18px;
    position: relative;
    padding-left: 20px;
    text-align: justify;
}

.li-blue li + li {
    margin-top: 1em;
}

.li-blue li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 10px;
    width: 8px;
    height: 8px;
    background: #068cd6;
    border-radius: 10px;
}

.point sup {
    font-size: 0.6em;
}

/*-- point -- */

.point {
    background: #fffbea;
    border-radius: 10px;
    position: relative;
    padding: 50px 30px 40px;
}

.point .ttl {
    position: absolute;
    top: -34px;
    left: 30px;
}


.point .topic .sub-ttl {
    font-size: 24px;
    line-height: 1.4;
    padding: 0 0 20px;
    text-align: left;
    color: #ff9933;
}


.point .topic {
    display: inline-block;
    vertical-align: top;
}


@media screen and (min-width: 770px) {
    .point .topic.gr {
        width: 520px;
    }
    .point .graph {
        display: inline-block;
        padding-left: 34px;
    }
    .point .graph.ng img {
        margin-top: -15px;
    }
    .point .topic a:hover {
        text-decoration: none;
    }
}

.point .topic a {
    color: #068cd6;
    text-decoration: underline;
}

.point .topic .txt {
    font-size: 16px;
    line-height: 1.7;
    text-align: justify;
}

.point .border {
    border-top: 1px solid #cccccc;
    margin-top: 30px;
    padding-top: 30px;
}

.top-point .border {
    padding-top: 10px;
}

.point.top-point {
    margin: 60px 0 40px;
}

.point.top-point .topic .sub-ttl {
    font-size: 20px;
    margin: 0;
    padding: 0 0 10px;
}

@media screen and (min-width: 770px) {
    .point.top-point .wrap {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
    }
    .point.top-point .wrap .graph {
        padding: 26px 0 0;
    }
    .point.top-point .wrap .box:last-child {
        width: 380px;
    }
}

.point.top-point .wrap .box {
    width: 320px;
    position: relative;
}

.point.top-point .wrap .box::before {
    content: "";
    position: absolute;
    top: 0;
    left: -30px;
    height: 440px;
    width: 1px;
    background: #cccccc;
}

.point.top-point .wrap .box:first-child:before {
    content: none;
}

/*------------------------------------------------------------------------------
  consideration
------------------------------------------------------------------------------*/

.consideration-mv-block {
    background: url("/images/img-consideration/kv_bg.jpg") no-repeat center / cover;
}

.consideration-mv-block .inner-block {
    padding: 40px 0 55px;
}

.consideration-mv-block .btn-back {
    top: 20px;
}

.consideration-mv-block .wrap-cont {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 30px;
}

.consideration-mv-block .txt-block {
    text-align: center;
    margin: 80px 70px 0;
}

.consideration-mv-block .img-block {
    width: 360px;
}


.consideration-mv-block .mv-rbn {
    display: inline-block;
    width: 340px;
    height: 72px;
    color: #fff;
    font-weight: bold;
    font-size: 18px;
    text-align: center;
    line-height: 64px;
    margin-bottom: 30px;
    background: url("/images/img-consideration/01/ribbon.png") no-repeat center / contain;
}

.consideration-mv-block .mv-balloon {
    margin: 10px;
}

.consideration-mv-block .mv-balloon img {
    margin: auto;
}

.consideration-mv-block .mv-ttl {
    font-size: 30px;
    font-weight: bold;
    line-height: 1.33;
}

.consideration-mv-block .mv-ttl .big-txt {
    font-size: 36px;
}

.consideration-mv-block .bottom-txt {
    font-size: 18px;
    color: #fff;
    padding: 15px 30px;
    background-color: rgba(255, 133, 11, 0.5);
    border-radius: 5px;
}

.consideration .cont01 .cont-wrap {
    border-radius: 10px;
    overflow: hidden;
    background-color: #fff6ed;
}

.consideration .cont01 .ttl-area {
    position: relative;
    color: #fff;
    font-size: 30px;
    font-weight: bold;
    padding: 20px 20px 20px 80px;
    background-color: #ed7474;
}

.consideration .cont01 .ttl-area:before {
    content: "";
    display: block;
    width: 34px;
    height: 34px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 30px;
    margin: auto;
    background: url("/images/img-common/ico_note_wt.svg") no-repeat center / 100% 100%;
}

.consideration .cont01 .cmn01 {
    padding: 30px;
}

.consideration .cont01 .top-cont {
    border-bottom: 1px solid #ed7474;
}

.consideration .cont01 .top-cont .top-area {
    display: flex;
    align-items: center;
    margin-bottom: 30px;
}

.consideration .cont01 .top-cont .txt-block {
    width: 640px;
    color: #ed7474;
    font-size: 28px;
    font-weight: bold;
    text-align: center;
    line-height: 1.42;
    padding-left: 20px;
}

.consideration .cont01 .top-cont .txt-block .big-txt {
    font-size: 36px;
}

.consideration .cont01 .top-cont .bottom-area {
    display: table;
    width: 100%;
    padding: 30px;
    background-color: #fff;
    border-radius: 10px;
}

@media screen and (min-width: 770px) {
    .consideration .cont01 .top-cont .bottom-area .left-block,
    .consideration .cont01 .top-cont .bottom-area .right-block {
        float: left;
        padding-bottom: 1em;
        width: 50%;
    }

    .consideration .cont01 .top-cont .bottom-area .left-block {
        border-right: 1px solid #e0e0e0;
    }

    .consideration .cont01 .top-cont .bottom-area .right-block {
        padding-left: 30px;
    }

    .consideration .cont01 .info {
        border-top: 1px solid #e0e0e0;
        clear: both;
        font-size: 18px;
        padding-top: 1em;
    }
}

.consideration .cont01 .top-cont .bottom-area .ttl {
    color: #ed7474;
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 20px;
}

.consideration .cont01 .top-cont .bottom-area .list li {
    font-size: 18px;
}

.consideration .cont01 .bottom-cont .txt-block {
    margin-bottom: 40px;
    text-align: center;
}

.consideration .cont01 .bottom-cont .balloon01 {
    margin-bottom: 20px;
}

.consideration .cont01 .bottom-cont .balloon02 {
    margin-bottom: 30px;
}

.consideration .cont01 .bottom-cont .case {
    width: 300px;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    padding: 15px;
    background-color: #ed7474;
    border-radius: 5px;
    text-align: center;
    margin: auto;
}

.consideration .cont02 {
    background-image: url("/images/img-consideration/cloud_bg.jpg");
    background-size: 450px;
}

.consideration .cont02 .inner-block {
    padding-bottom: 100px;
}

.consideration .cont02 .parts-wrap:nth-of-type(n + 2) {
    margin-top: 90px;
}

.consideration .cont02 .parts-block {
    position: relative;
    border-radius: 10px;
    border: solid 4px #ed7474;
    background-color: #fff;
}

.consideration .cont02 .exclamation {
    border: solid 4px #ff9933;
}

.consideration .cont02 .txt-note,
.entry-flow li .txt .txt-note{
    display: block;
    font-size: 14px;
}

.consideration .cont02 .parts-block.question {
    margin-bottom: 70px;
}

.consideration .cont02 .parts-block.question:after {
    content: "";
    position: absolute;
    bottom: -54px;
    left: 500px;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 17px 0 17px;
    border-color: #ed7474 transparent transparent transparent;
}

.consideration .cont02 .ttl-area {
    position: relative;
    background-color: #ed7474;
    padding: 10px 20px 10px 100px;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
}

.consideration .cont02 .exclamation .ttl-area {
    background-color: #ff9933;
}

.consideration .cont02 .ttl-area:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 30px;
    margin: auto;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: url("/images/img-common/ico_qm_pink.svg") no-repeat center / 17px auto #fff;
}

.consideration .cont02 .exclamation .ttl-area:before {
    background: url("/images/img-common/ico_em_org.svg") no-repeat center / 7px auto #fff;
}

.consideration .cont02 .ttl-area .big-txt {
    font-size: 30px;
    margin-left: 3px;
}

.consideration .cont02 .txt-block {
    padding: 20px 30px 30px;
}

.consideration .cont02 .txt-block .ttl {
    font-size: 24px;
    font-weight: bold;
    line-height: 1.3;
}

.consideration .cont02 .txt-block .ttl .small-txt {
    font-size: 16px;
    font-weight: normal;
}

.consideration .cont02 .txt-block .description {
    font-size: 16px;
    margin-top: 10px;
}

.consideration .cont02 .exclamation .txt-block {
    padding-right: 330px;
}

.consideration .cont02 .question  .img-block {
    position: absolute;
    z-index: 1;
    bottom: -380px;
    right: 30px;
}

.consideration .cont02 .balloon {
    position: relative;
    top: 35px;
    z-index: 1;
    padding: 20px 20px 50px;
    background: url("/images/img-consideration/01/point_balloon.png") no-repeat center / 100% 100%;
    text-align: center;
}

.consideration .cont02 .balloon .ttl {
    display: inline-block;
    position: relative;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    padding-left: 40px;
    margin-bottom: 5px;
    text-align: center;
}

.consideration .cont02 .balloon .ttl:before {
    content: "";
    display: block;
    width: 30px;
    height: 33px;
    background: url("/images/img-common/ico_point.svg") no-repeat center / 100% 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
}

.consideration .cont02 .balloon .bottom-txt {
    color: #fff;
    font-weight: bold;
    line-height: 1;
}

.consideration .cont02 .balloon .number{
    font-family: 'Century Gothic';
}

.consideration .cont02 .balloon .first {
    position: relative;
    font-size: 20px;
    padding-right: 35px;
}

.consideration .cont02 .balloon .first:after {
    content: "";
    display: block;
    position: absolute;
    top: -5px;
    right: 5px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 13px 0 13px 14px;
    border-color: transparent transparent transparent #ffffff;
}

.consideration .cont02 .balloon .first .number {
    font-size: 36px;
}

.consideration .cont02 .balloon .second {
    font-size: 24px;
}

.consideration .cont02 .balloon .second .number {
    font-size: 50px;
}

.consideration .cont02 .balloon .yellow-line {
    font-size: 28px;
    background: linear-gradient(transparent 60%, #ff9933 60%);
    margin-right: 3px;
}

.note-list {
    font-size: 14px;
    margin-top: 20px;
}

.note-list li {
    padding-left: 1em;
    text-indent: -1em;
}

.note-list li:nth-of-type(n + 2) {
    margin-top: 3px;
}

.consideration .professor-block {
    background-color: #ed7474;
}

.consideration .professor-block .profile-box .ttl,
.consideration .professor-block .profile-box .ttl-profile .txt{
    color: #ed7474;
}

.consideration .professor-block .profile-box .ttl-profile .txt::before {
    background-image: url("/images/img-common/ico_human_pink.svg");
}

.consideration .professor-block .profile-box .img-profile {
    border-color: #ed7474;
}

.me-consider {
    background-color: #fffbea;
}

.me-consider .inner-block {
    padding-bottom: 140px;
}

.me-consider .ttl {
    color: #f93;
    font-size: 36px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 60px;
}


.me-consider .common-btn .btn {
    background-color: #068cd6;
}

.me-consider .btn-back {
    top: auto;
    bottom: 40px;
}

.consideration .btn-back {
    box-shadow: 0 2px rgba(0,0,0,0.05);
}

/* page02
----------------------------------------*/
.page02 .consideration-mv-block .mv-rbn {
    background-image: url("/images/img-consideration/02/ribbon.png");
}

.consideration.page02 .cont01 .ttl-area,
.consideration.page02 .cont01 .bottom-cont .case,
.consideration.page02 .slider-block .slick-dots li.slick-active,
.consideration.page02 .cont02 .question .ttl-area,
.consideration.page02 .professor-block {
    background-color: #068cd6;
}

.consideration.page02 .cont01 .cont-wrap {
    background-color: #f2faff;
}

.consideration.page02 .cont01 .top-cont,
.consideration.page02 .slider-block .slick-dots li,
.consideration.page02  .cont02 .parts-block.question,
.consideration.page02 .professor-block .profile-box .img-profile {
    border-color: #068cd6;
}

.consideration.page02 .cont02 .parts-block.question:after {
    border-color: #068cd6 transparent transparent transparent;
}

.consideration.page02  .cont02 .question .ttl-area:before {
    background-image: url("/images/img-common/ico_qm_bl.svg");
}

.consideration.page02 .cont02 .balloon {
    background-image: url("/images/img-consideration/02/point_balloon.png");
}

.consideration.page02 .professor-block .profile-box .ttl,
.consideration.page02 .professor-block .profile-box .ttl-profile .txt,
.consideration.page02 .cont01 .top-cont .txt-block,
.consideration.page02 .cont01 .top-cont .bottom-area .ttl {
    color: #068cd6;
}

.consideration.page02  .professor-block .profile-box .ttl-profile .txt::before{
    background-image: url("/images/img-common/ico_human_bl.svg");
}

/* slider
----------------------------------------*/

.slider-block li {
    width: 640px;
    margin: 0 auto;
    outline: none;
    text-align: center;
}

.slider-block li img {
    width: 640px;
    margin: 0 auto;
}

.slider-block .description {
    width: 640px;
    font-size: 16px;
    margin: 30px auto 40px;
    text-align: left;
}

.slider-block .description .txt-note {
    font-size: 12px;
}

.slider-block .slide-arrow {
    position: absolute;
    z-index: 10;
    top: 201.5px;
    width: 26px;
    cursor: pointer;
}

.slider-block .next-arrow {
    right: 190px;
}

.slider-block .prev-arrow {
    left: 190px;
}

.slider-block .slick-dots li {
    width: 12px;
    height: 12px;
    background-color: #fff;
    border: 1px solid #ed7474;
    border-radius: 50%;
}

.slider-block .slick-dots li.slick-active {
    background-color: #ed7474;
}

.slider-block .slick-dots li button {
    width: 12px;
    height: 12px;
}

.slider-block .slick-dots li button:before {
    width: 12px;
    height: 12px;
    font-size: 0;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}

/*------------------------------------------------------------------------------
  interview
------------------------------------------------------------------------------*/

/* interview-title-block
----------------------------------------*/

.interview-title-block {
    background: #fffbea;
    text-align: center;
}
.interview-title-block .ribbon-ttl {
    background: url("/images/column-img/ribbon_orange.png") no-repeat;
}

.interview-title-block .btn-back {
    top: 20px;
}

.interview-title-block .ttl {
    color: #ff9933;
    font-size: 40px;
    font-weight: bold;
    line-height: 1.3;
    margin: 20px 0;
    text-align: center;
}

.interview-title-block .txt {
    font-size: 18px;
}

@media screen and (min-width: 770px) {
    .interview-title-block .illust-wrap {
        position: relative;
    }

    .interview-title-block .illust-wrap img {
        position: absolute;
        bottom: -110px;
    }

    .interview-title-block .illust-wrap .illust01 {
        left: 0;
    }

    .interview-title-block .illust-wrap .illust02 {
        right: 0;
    }
}

/* interview-summary-block
----------------------------------------*/

.interview-summary-block {
    background: #ff9933;
    padding: 90px 0 60px;
}

.interview-summary-block .inner-block {
    background: #fff;
    border-radius: 10px;
    padding: 25px 30px 30px;
}

@media screen and (min-width: 770px) {
    .interview-summary-block .txt-wrap {
        float: left;
        width: 630px;
    }

    .interview-summary-block .img {
        float: right;
        margin-bottom: 40px;
        width: 480px;
    }
}

.interview-summary-block .case {
    color: #ff9933;
    font-family: "gothic-bold";
    font-size: 20px;
    margin-bottom: 15px;
    line-height: 1;
}

.interview-summary-block .case .num {
    font-size: 36px;
    display: inline-block;
}

.interview-summary-block .ttl {
    border-top: 2px solid #ff9933;
    border-bottom: 2px solid #ff9933;
    color: #ff9933;
    font-size: 32px;
    font-weight: bold;
    line-height: 1.3;
    padding: 30px 0 25px;
}

.interview-summary-block .ttl .sub {
    display: block;
    font-size: 18px;
    margin-bottom: 10px;
}

.interview-summary-block .name {
    font-size: 24px;
    font-weight: bold;
    margin-top: 25px;
}

.interview-summary-block .name .small {
    font-size: 18px;
}

.interview-summary-block .info {
    font-size: 16px;
    margin-top: 5px;
}

.interview-summary-block .price {
    border: 2px solid #ff9933;
    border-radius: 10px;
    clear: both;
    overflow: hidden;
}

@media screen and (min-width: 770px) {
    .interview-summary-block .price {
        display: table;
        width: 100%;
    }
    .interview-summary-block .price .head,
    .interview-summary-block .price .txt {
        display: table-cell;
        vertical-align: middle;
    }

    .interview-summary-block .price .head {
        width: 350px;
    }
}

.interview-summary-block .price .head {
    background: #ff9933;
    color: #fff;
    font-size: 36px;
    font-weight: bold;
    text-align: center;
}

.interview-summary-block .price .head .small {
    font-size: 24px;
}

.interview-summary-block .price .head .small .op {
    font-size: 16px;
    padding-left: 3px;
}

.interview-summary-block .price .txt {
    font-size: 16px;
    padding: 22px 30px;
}

/* section-box
----------------------------------------*/

.section-box {
    background: #fffbea;
    border-radius: 10px;
    font-size: 16px;
    padding: 30px;
}

.section-box + .section-box {
    margin-top: 60px;
}

.section-box .sec-ttl {
    margin: -60px 0 25px;
}

.section-box .sec-ttl02 {
    background: #068cd6;
    color: #fff;
    font-size: 24px;
    font-weight: bold;
    margin: 35px -30px 30px;
    padding: 10px 30px;
}

.section-box .plan-ttl {
    color: #068cd6;
    font-size: 18px;
    font-weight: bold;
    margin: 25px 0 8px;
}

.section-box.sec01 .lead {
    color: #ff9933;
    font-size: 24px;
    font-weight: bold;
    line-height: 1.4;
}

.section-box.sec02 .desc {
    font-size: 24px;
}

.section-box.sec02 > .img {
    margin-top: 30px;
}

.section-box.sec02 .portfolio-box {
    margin-top: 30px;
}

@media screen and (min-width: 770px) {
    .section-box.sec02 .portfolio-box .img {
        float: left;
    }
    .section-box.sec02 .portfolio-box .graph {
        float: right;
    }

    .section-box.sec02 .txt-note {
        font-size: 14px;
    }
}

.section-box .point-box .point-ttl {
    background: url("/images/img-common/ico_point.svg") no-repeat 28px 48% #ff9933;
    border-radius: 10px 10px 0 0;
    color: #fff;
    font-size: 24px;
    font-family: "gothic-bold";
    padding: 18px 15px 20px 72px;
}

.section-box .point-box .txt-wrap {
    background: #fff;
    border-radius: 0 0 10px 10px;
    padding: 25px 240px 25px 30px;
}

.section-box .point-box .point-lead {
    color: #ff9933;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 10px;
}

.section-box .point-box .strong {
    color: #ef4850;
    font-weight: bold;
}

@media screen and (min-width: 770px) {
    .section-box .point-box {
        display: table;
        margin-top: 30px;
        width: 100%;
    }

    .section-box .point-box .point-ttl,
    .section-box .point-box .txt-wrap {
        display: table-cell;
        vertical-align: middle;
    }

    .section-box .point-box .point-ttl {
        border-radius: 10px 0 0 10px;
        width: 200px;
    }

    .section-box .point-box .txt-wrap {
        background: url("/images/img-interview/img_simulation.png") no-repeat right 30px center #fff;
        border-radius: 0 10px 10px 0;
        border-top-width: 2px;
        border-left-width: 0;
        padding: 20px 240px 20px 30px;
    }
}

.section-box .point-box .common-btn {
    margin-top: 20px;
}

.section-box .point-box .common-btn .btn {
    background-color: #ef4850;
    color: #fff;
    font-size: 18px;
    padding: 18px 80px 18px 65px;
    width: auto;
}

@media screen and (min-width: 770px) {
    .section-box .point-box .common-btn .btn:hover {
        background-color: #ff9933;
    }
}

.entry-flow {
    counter-reset: flowNum;
}

.entry-flow li + li {
    margin-top: 40px;
    position: relative;
}

.entry-flow li + li::before {
    content: "";
    display: block;
    margin: auto;
    position: absolute;
    top: -30px;
    left: 0;
    right: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 18px 12px 0 12px;
    border-color: #3dbeed transparent transparent transparent;
}

@media screen and (min-width: 770px) {
    .entry-flow li {
        display: table;
        width: 100%;
    }

    .entry-flow li .head,
    .entry-flow li .body,
    .entry-flow li .body > * {
        display: table-cell;
        vertical-align: middle;
    }

    .entry-flow li .head {
        width: 200px;
    }

    .entry-flow li .ttl {
        border-right: 1px solid #ccc;
        padding-right: 20px;
        width: 380px;
    }

    .entry-flow li .txt {
        padding-left: 20px;
    }
}

.entry-flow li .head {
    background: #3dbded;
    border-radius: 10px 0 0 10px;
    color: #fff;
    font-family: "gothic-bold";
    font-size: 24px;
    font-weight: bold;
    line-height: 1;
    padding: 30px;
    text-align: center;
}

.entry-flow li .head::after {
    counter-increment: flowNum;
    content: counter(flowNum);
    font-size: 36px;
}

.entry-flow li .body {
    background: #fff;
    border-radius: 0 10px 10px 0;
    padding: 25px 30px;
}

.entry-flow li .ttl {
    color: #3dbded;
    font-size: 24px;
    line-height: 1.4;
}

@media screen and (min-width: 770px) {
    .section-box.sec04 .lead,
    .section-box.sec04 .txt {
        float: left;
        margin-right: 30px;
        width: 630px;
    }
}

.section-box.sec04 .lead {
    color: #ff9933;
    font-size: 24px;
    font-weight: bold;
    line-height: 1.4;
    margin-bottom: 15px;
}

/*------------------------------------------------------------------------------
  related-block
------------------------------------------------------------------------------*/

.related-block {
    background: #fffbea;
}

.related-block .btn-back {
    margin-top: 40px;
    position: static;
}

.related-block .ttl {
    color: #ff9933;
    font-size: 36px;
    font-weight: bold;
    text-align: center;
    line-height: 1;
    margin-bottom: 60px;
}

@media screen and (min-width: 770px) {
    .related-list {
        text-align: center;
    }

    .related-list li {
        display: inline-block;
        text-align: left;
        width: 585px;
    }

    .related-list li:not(:only-child) {
        float: left;
    }

    .related-list li:nth-child(even) {
        float: right;
    }

    .related-list li .common-btn {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
    }
}

.related-list li a {
    background: #fff;
    border-radius: 10px;
    box-shadow: 0px 2px 0px 0px rgba(0, 0, 0, 0.05);
    display: block;
    padding: 30px;
    position: relative;
}

.related-list li a::before {
    background: no-repeat center center;
    background-size: 100% 100%;
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 90px;
    height: 90px;
    z-index: 1;
}

.related-list li .common-btn .btn {
    background-color: #ff9933;
}

.related-list li .img {
    float: left;
    width: 180px;
}

.related-list li .img img {
    border-radius: 8px;
}

.related-list li .txt-wrap {
    float: right;
    padding: 0 0 52px 30px;
    position: relative;
    width: -webkit-calc(100% - 180px);
    width: calc(100% - 180px);
}

.related-list li .article-ttl {
    color: #ff9933;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.3;
    margin-bottom: 15px;
}

@media screen and (min-width: 770px) {
    .related-list li a:hover {
        box-shadow: 0px 5px 20px 0px rgba(0, 0, 0, 0.1);
        -webkit-transform: translateY(-3px);
        transform: translateY(-3px);
    }
}

/* variation */

.related-list li a[href*="interview/01"]::before {
    background-image: url("/images/img-top/voice_ribbon01.svg");
}

.related-list li a[href*="interview/02"]::before {
    background-image: url("/images/img-top/voice_ribbon02.svg");
}

.related-list li.woman a::before {
    background-image: url("/images/img-top/consider_ribbon01.svg");
}

.related-list li.youth a::before {
    background-image: url("/images/img-top/consider_ribbon02.svg");
}

.related-list li.woman .article-ttl {
    color: #ed7474;
}
.related-list li.woman .common-btn .btn {
    background-color: #ed7474;
}
.related-list li.youth .article-ttl {
    color: #068cd6;
}
.related-list li.youth .common-btn .btn {
    background-color: #068cd6;
}

@media screen and (min-width: 770px) {
    .related-block .price-list {
        text-align: center;
    }

    .related-block .price-list li {
        display: inline-block;
        float: none;
    }
}

.related-block .price-list a {
    background: #fff;
}

/*------------------------------------------------------------------------------
  animation
------------------------------------------------------------------------------*/

/* common animation
----------------------------------------*/

@-webkit-keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@-webkit-keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(20px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
    }
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        transform: translateY(20px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@-webkit-keyframes fadeInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(20px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
    }
}

@keyframes fadeInLeft {
    0% {
        opacity: 0;
        transform: translateX(20px);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

/*
@-webkit-keyframes openInner {
  0%,
  60% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes openInner {
  0%,
  60% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@-webkit-keyframes charaFadeIn {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  60% {
    opacity: 0.3;
    -webkit-transform: rotate(0) translateY(5px);
  }
  80% {
    opacity: 1;
    -webkit-transform: rotate(-5deg);
  }
  88% {
    -webkit-transform: rotate(3deg) translateY(0);
  }
  93% {
    -webkit-transform: rotate(-2deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: rotate(0);
  }
}

@keyframes charaFadeIn {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  60% {
    opacity: 0.3;
    transform: rotate(0) translateY(5px);
  }
  80% {
    opacity: 1;
    transform: rotate(-5deg);
  }
  88% {
    transform: rotate(3deg) translateY(0);
  }
  93% {
    transform: rotate(-2deg);
  }
  100% {
    opacity: 1;
    transform: rotate(0);
  }
}

[class*="anim-"],
.anim-list li {
  opacity: 0;
}

.anim-list.is-animated {
  -webkit-animation: fadeIn .5s forwards;
  animation: fadeIn .5s forwards;
}

.anim-list.is-animated li {
  -webkit-animation: fadeInLeft 1.5s forwards cubic-bezier(0, .4, .2, 1);
  animation: fadeInLeft 1.5s forwards cubic-bezier(0, .4, .2, 1);
}

.anim-fadeInUp.is-animated {
  -webkit-animation: fadeInUp 1.5s forwards cubic-bezier(0, .4, .2, 1);
  animation: fadeInUp 1.5s forwards cubic-bezier(0, .4, .2, 1);
}

.anim-fadeIn.is-animated {
  -webkit-animation: fadeIn 1.5s forwards;
  animation: fadeIn 1.5s forwards;
}

.anim-open.is-animated {
  -webkit-animation: fadeIn 1.5s forwards;
  animation: fadeIn 1.5s forwards;
}

.voice-answer-block .comment.is-animated .chara,
.point-box.is-animated .img {
  -webkit-animation: charaFadeIn 1s cubic-bezier(0, .4, .2, 1);
  animation: charaFadeIn 1s cubic-bezier(0, .4, .2, 1);
}
*/

/* mv-block
----------------------------------------*/

@-webkit-keyframes fadeInRotate {
    0%,
    50% {
        opacity: 0;
        -webkit-transform: perspective(800px) rotateX(80deg);
        -webkit-transform-origin: center bottom;
    }
    100% {
        opacity: 1;
        -webkit-transform: perspective(800px) rotateX(0);
        -webkit-transform-origin: center bottom;
    }
}

@keyframes fadeInRotate {
    0%,
    50% {
        opacity: 0;
        transform: perspective(800px) rotateX(80deg);
        transform-origin: center bottom;
    }
    100% {
        opacity: 1;
        transform: perspective(800px) rotateX(0);
        transform-origin: center bottom;
    }
}

@-webkit-keyframes graphOpen {
    0%,
    40% {
        opacity: 0;
        -webkit-transform: scaleX(0);
        -webkit-transform-origin: right center;
    }
    55% {
        -webkit-transform: scaleX(0.9);
    }
    100% {
        opacity: 1;
        -webkit-transform: scaleX(1);
        -webkit-transform-origin: right center;
    }
}

@keyframes graphOpen {
    0%,
    40% {
        opacity: 0;
        transform: scaleX(0);
        transform-origin: right center;
    }
    55% {
        transform: scaleX(0.9);
    }
    100% {
        opacity: 1;
        transform: scaleX(1);
        transform-origin: right center;
    }
}

@-webkit-keyframes graphOpenInner {
    0%,
    50% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@keyframes graphOpenInner {
    0%,
    50% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@-webkit-keyframes mvCharaFadeIn {
    0% {
        opacity: 0;
    }
    70% {
        opacity: 0;
    }
    80% {
        opacity: 0.3;
        -webkit-transform: rotate(0) translateY(5px);
    }
    85% {
        opacity: 1;
        -webkit-transform: rotate(-5deg);
    }
    92% {
        -webkit-transform: rotate(3deg) translateY(0);
    }
    95% {
        -webkit-transform: rotate(-2deg);
    }
    100% {
        -webkit-transform: rotate(0);
    }
}

@keyframes mvCharaFadeIn {
    0% {
        opacity: 0;
    }
    70% {
        opacity: 0;
    }
    80% {
        opacity: 0.3;
        transform: rotate(0) translateY(5px);
    }
    85% {
        opacity: 1;
        transform: rotate(-5deg);
    }
    92% {
        transform: rotate(3deg) translateY(0);
    }
    95% {
        transform: rotate(-2deg);
    }
    100% {
        transform: rotate(0);
    }
}

@-webkit-keyframes line {
    0% {
        opacity: 0;
        -webkit-transform: scaleX(0.5);
        -webkit-transform-origin: right center;
    }
    100% {
        opacity: 1;
        -webkit-transform: scaleX(1);
        -webkit-transform-origin: right center;
    }
}

@keyframes line {
    0% {
        opacity: 0;
        transform: scaleX(0.5);
        transform-origin: right center;
    }
    100% {
        opacity: 1;
        transform: scaleX(1);
        transform-origin: right center;
    }
}

.mv-block .sub-ttl,
.mv-block .ttl {
    display: inline-block;
    line-height: 1;
}

.mv-block .ttl .sub {
    -webkit-animation: fadeInLeft 1.2s forwards cubic-bezier(0, .4, .2, 1);
    animation: fadeInLeft 1.2s forwards cubic-bezier(0, .4, .2, 1);
}

.mv-block .ttl .main {
    -webkit-animation: fadeInLeft 1.2s forwards cubic-bezier(0, .4, .2, 1);
    animation: fadeInLeft 1.2s forwards cubic-bezier(0, .4, .2, 1);
    -webkit-animation-delay: .2s;
    animation-delay: .2s;
    opacity: 0;
}

.mv-block .ttl .main::before,
.mv-block .ttl .main::after {
    -webkit-animation: line 1s forwards cubic-bezier(0, .4, .2, 1);
    animation: line 1s forwards cubic-bezier(0, .4, .2, 1);
}

.mv-block .sub-ttl {
    -webkit-animation: fadeInRotate 1s forwards cubic-bezier(0, .4, .2, 1);
    animation: fadeInRotate 1s forwards cubic-bezier(0, .4, .2, 1);
}

.mv-block .interview-box {
    -webkit-animation: graphOpen 1s cubic-bezier(0, .4, .2, 1);
    animation: graphOpen 1s cubic-bezier(0, .4, .2, 1);
}

.mv-block .interview-box > * {
    -webkit-animation: graphOpenInner 2s cubic-bezier(0, .4, .2, 1);
    animation: graphOpenInner 2s cubic-bezier(0, .4, .2, 1);
}

.mv-block .chara01 {
    -webkit-animation: mvCharaFadeIn 2.3s cubic-bezier(0, .4, .2, 1);
    animation: mvCharaFadeIn 2.3s cubic-bezier(0, .4, .2, 1);
}

.mv-block .chara02 {
    -webkit-animation: mvCharaFadeIn 2s cubic-bezier(0, .4, .2, 1);
    animation: mvCharaFadeIn 2s cubic-bezier(0, .4, .2, 1);
}

/* qa-block
----------------------------------------*/

/*
@-webkit-keyframes balloonFadeIn {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
    -webkit-transform: rotate(0);
  }
  70% {
    opacity: 1;
    -webkit-transform: rotate(-1deg);
  }
  80% {
    -webkit-transform: rotate(1deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: rotate(0);
  }
}

@keyframes balloonFadeIn {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
    transform: rotate(0);
  }
  70% {
    opacity: 1;
    transform: rotate(-1deg);
  }
  80% {
    transform: rotate(1deg);
  }
  100% {
    opacity: 1;
    transform: rotate(0);
  }
}

.qa-block .ttl .main,
.qa-block .ttl .sub,
.qa-block .note,
.qa-block .ttl-chara,
.qa-block .balloon01,
.qa-block .balloon02 {
  opacity: 0;
}

.qa-block.is-animated .ttl .main {
  -webkit-animation: fadeInUp 1.5s forwards cubic-bezier(0, .4, .2, 1);
  animation: fadeInUp 1.5s forwards cubic-bezier(0, .4, .2, 1);
}

.qa-block.is-animated .ttl .sub {
  -webkit-animation: fadeInRotate 1s forwards cubic-bezier(0, .4, .2, 1);
  animation: fadeInRotate 1s forwards cubic-bezier(0, .4, .2, 1);
}

.qa-block.is-animated .note,
.qa-block.is-animated .ttl-chara {
  -webkit-animation: fadeIn 1s forwards;
  animation: fadeIn 1s forwards;
}

.qa-block.is-animated .balloon01 {
  -webkit-animation: balloonFadeIn 1.4s forwards ease-in-out;
  animation: balloonFadeIn 1.4s forwards ease-in-out;
  -webkit-transform-origin: right bottom;
  transform-origin: right bottom;
}

.qa-block.is-animated .balloon02 {
  -webkit-animation: balloonFadeIn 1.6s forwards ease-in-out;
  animation: balloonFadeIn 1.6s forwards ease-in-out;
  -webkit-transform-origin: left bottom;
  transform-origin: left bottom;
}
*/


/*------------------------------------------------------------------------------
  clearfix
------------------------------------------------------------------------------*/

.clearfix:after,
.inner-block:after,
.qa-box .txt-wrap:after,
.price-list:after,
.voice-list:after,
.voice-list li a:after,
.column-list li a:after,
.contents-list:after,
.interview-summary-block .price:after,
.section-box.sec02 .portfolio-box:after,
.section-box:after,
.related-list:after,
.related-list li a:after {
    clear: both;
    content: "";
    display: block;
    height: 0px;
    font-size: 0;
    visibility: hidden;
}
/*------------------------------------------------------------------------------
  quote / js
------------------------------------------------------------------------------*/
.quotColumn{
    position: absolute; font-size: 12px; width: 300px; line-height: 140%;
    border-radius: 5px; padding: 0.8em;
    color: #2e2e2e;
    background: #fff8e0;  transform: translate3d(-25%,-125%,0);
    opacity: 0; pointer-events: none;
    transition: opacity 500ms;
}
.quotColumn.on{
    opacity: 1;
}

.quotColumn:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 15px solid #fff8e0;
}

@media screen and (max-width: 770px) {
    .quotColumn{
        display: none;
    }
}
.quotColumn p {
    margin: 0;
    padding: 0;
}
ul.asterisk{ padding: 0 1em;	}
ul.asterisk li:before{
    content: '※ ';
    margin-left: -1em;
}


@media screen and (min-width: 770px) {
    #area01{
        padding-top: 60px;
    }
}

a.text-link:link,a.text-link:visited {
    color: #068cd6;
    text-decoration: underline;
}