@charset "UTF-8";
@import url(//use.fontawesome.com/releases/v5.0.6/css/all.css);
@import url(//fonts.googleapis.com/css?family=Oswald);
@import url(//fonts.googleapis.com/earlyaccess/notosansjapanese.css);

/*------------------------------------------
  Base Layout
------------------------------------------*/
html {
    font-size                : 62.5%;
    overflow-y               : scroll;
    -webkit-text-size-adjust : 100%;
    -ms-text-size-adjust     : 100%;
}

body {
    font-family : "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "MS PGothic", sans-serif;
    font-size   : 1.4em;
    background  : #fff;
    color       : #333;
    line-height : 1.8;
}

a {
    color              : #333;
    text-decoration    : none;
    -webkit-transition : opacity .2s ease;
    transition         : opacity .2s ease;
}

a:hover {
    opacity            : .7;
    -webkit-transition : opacity .2s ease;
    transition         : opacity .2s ease;
}

a.link-tel {
    pointer-events : none;
}

img {
    max-width      : 100%;
    height         : auto;
    vertical-align : bottom;
    object-fit     : cover;
}

.wrapper {
    min-height         : 100vh;
    position           : relative;
    overflow           : hidden;
    -webkit-box-sizing : border-box;
    box-sizing         : border-box;
}

.disp-pc {
    display : block;
}

.disp-sp {
    display : none;
}

#launcher {
    bottom : 80px !important;
}

@media only screen and (max-width : 1024px) {
    .wrapper {
        padding-top : 0 !important;
    }
}

@media only screen and (max-width : 480px) {
    a.link-tel {
        pointer-events : auto;
    }

    .disp-pc {
        display : none;
    }

    .disp-sp {
        display : block;
    }
}

/*------------------------------------------
  parts
------------------------------------------*/
/* layout */
.layout-type01 {
    padding   : 0 40px;
    padding   : 0 0 2em;
    /* max-width: 1000px; */
    max-width : 1200px;
    margin    : auto;
}

/* title */
.title-type01 {
    font-weight    : bold;
    font-size      : 20px;
    font-size      : 2rem;
    color          : #e10126;
    border-bottom  : 3px solid #e10126;
    display        : inline-block;
    letter-spacing : .085em;
    line-height    : 1.5;
}

.title-type02 {
    font-weight    : bold;
    font-size      : 24px;
    font-size      : 2.4rem;
    display        : inline-block;
    letter-spacing : .085em;
    line-height    : 1.5;
}

.title-type03 {
    font-weight    : bold;
    font-size      : 20px;
    font-size      : 2rem;
    color          : #fff;
    border-bottom  : 3px solid #fff;
    display        : inline-block;
    letter-spacing : .085em;
    line-height    : 1.5;
}

.title-type04 {
    text-align  : center;
    line-height : 1.3;
}

.title-type04 .ttl-main {
    font-size      : 22px;
    font-size      : 2.2rem;
    position       : relative;
    letter-spacing : .08em;
    padding-bottom : .8em;
}

.title-type04 .ttl-main:after {
    content     : "";
    height      : 2px;
    width       : 30px;
    background  : #e10126;
    position    : absolute;
    bottom      : 0;
    left        : 50%;
    margin-left : -15px;
}

.title-type04 .ttl-sub {
    font-size   : 16px;
    font-size   : 1.6rem;
    padding-top : .8em;
    color       : #aaa;
}

.title-type05 .ttl-main, .title-type05 .ttl-sub {
    display        : inline-block;
    vertical-align : middle;
}

.title-type05 .ttl-main {
    font-size      : 22px;
    font-size      : 2.2rem;
    letter-spacing : .08em;
}

.title-type05 .ttl-sub {
    font-size   : 16px;
    font-size   : 1.6rem;
    color       : #aaa;
    margin-left : .5em;
}

.title-type06 {
    font-size     : 22px;
    font-size     : 2.2rem;
    border-bottom : 4px solid #e10126;
}

.title-type07 {
    font-size   : 30px;
    font-size   : 3rem;
    background  : #efefef;
    border-left : 4px solid #e10126;
    padding     : .2em 1em;
}

.title-type08 {
    font-size   : 22px;
    font-size   : 2.2rem;
    border-left : 4px solid #9d9d9d;
    line-height : 1.3;
    padding     : 0 .5em;
    position    : relative;
}

.title-type08:after {
    content    : "";
    width      : 4px;
    height     : 50%;
    background : #e10126;
    position   : absolute;
    left       : -4px;
    bottom     : 0;
}

.title-type09 .ttl-main {
    font-family    : "Oswald", sans-serif;
    font-size      : 62px;
    font-size      : 6.2rem;
    letter-spacing : .075em;
}

.title-type10 {
    color : #e10126;
}

.title-type10 .ttl-en {
    font-family    : "Oswald", sans-serif;
    font-size      : 36px;
    font-size      : 3.6rem;
    letter-spacing : .075em;
    line-height    : 1.2;
    font-weight    : 900;
}

.title-type10 .ttl-ja {
    font-weight : bold;
    font-size   : 26px;
    font-size   : 2.6rem;
}

.title-type10 .ttl-catch {
    font-size  : 18px;
    font-size  : 1.8rem;
    margin-top : 1em;
}

.title-type11 {
    color      : #fff;
    background : #e10126;
    display    : inline-block;
    font-size  : 16px;
    font-size  : 1.6rem;
    padding    : 1em 3em;
}

/* btn */
.btn-type01 {
    display     : inline-block;
    background  : #e10126;
    color       : #fff;
    font-size   : 20px;
    font-size   : 2rem;
    padding     : .2em .8em;
    font-weight : bold;
    border      : 2px solid #e10126;
    box-sizing  : border-box;
}

.btn-type01:hover {
    background : #fff;
    color      : #e10126;
}

.btn-type02 {
    display     : inline-block;
    border      : 2px solid #fff;
    color       : #fff;
    font-size   : 16px;
    font-size   : 1.6rem;
    padding     : .4em 2em;
    font-weight : bold;
}

.btn-type03 {
    display     : inline-block;
    border      : 1px solid #e10126;
    color       : #e10126;
    font-size   : 16px;
    font-size   : 1.6rem;
    padding     : .4em 3em;
    font-weight : bold;
}

.btn-type04 {
    display     : inline-block;
    padding     : .6em 4em;
    font-size   : 20px;
    font-size   : 2rem;
    font-weight : bold;
    border      : 2px solid #fff;
    color       : #fff;
    box-sizing  : border-box;
}

.btn-type04:hover {
    background : #fff;
    color      : #111;
}

.btn-type05 {
    display     : inline-block;
    font-weight : bold;
    font-size   : 22px;
    font-size   : 2.2rem;
    color       : #e10126;
    background  : #fff;
    padding     : 1em;
    width       : 76%;
    box-shadow  : 5px 5px 5px -2px rgba(0, 0, 0, .4);
}

.btn-type05 i {
    font-size : 120%;
}

.btn-type06 {
    display       : inline-block;
    padding       : 5px 20px;
    font-size     : 11px;
    font-size     : 1.1rem;
    font-weight   : bold;
    background    : #e10126;
    border        : 1px solid #e10126;
    color         : #fff;
    box-sizing    : border-box;
    border-radius : 20px;
}

.btn-type06:hover {
    background : #fff;
    color      : #e10126;
}

/* table */
.table-type01 {
    width      : 100%;
    text-align : left;
    border     : 1px solid #d8d8d8;
}

.table-type01 tr {
    border-bottom : 1px solid #d8d8d8;
}

.table-type01 tr:nth-of-type(even) {
    background : #eee;
}

.table-type01 th, .table-type01 td {
    padding        : 10px;
    vertical-align : middle;
    font-weight    : bold;
    text-align     : center;
}

.table-type01 th {
    text-align  : center;
    font-weight : bold;
    width       : auto;
    box-sizing  : border-box;
}

.table-type01 th:nth-child(6) {
    width : 220px;
}

.table-type01 th:last-child {
    width : 200px;
}


/* table */
.table-type011 {
    width        : 100%;
    text-align   : left;
    border       : 1px solid #d8d8d8;
    table-layout : fixed;
}

.table-type011 tr {
    border-bottom : 1px solid #d8d8d8;
}

.table-type011 tr:nth-of-type(even) {
    background : #eee;
}

.table-type011 th, .table-type011 td {
    padding        : 10px;
    vertical-align : middle;
    font-weight    : bold;
    text-align     : center;
}

.table-type011 th {
    text-align  : center;
    font-weight : bold;
    width       : auto;
    box-sizing  : border-box;
}

.table-type011 th:last-child {
    width : 200px;
}

.table-type011 tr th:nth-child(6),
.table-type011 tr td:nth-child(6),
.table-type011 tr th:nth-child(7),
.table-type011 tr td:nth-child(7) {
    border : 1px solid #333;
    width  : 100px;
}

.table-type01-company {
    width      : 100%;
    text-align : left;
    border     : 1px solid #d8d8d8;
}


.table-type01-company tr {
    border : 1px solid #d8d8d8;
}

.table-type01-company tr:nth-of-type(even) {
    background : #eee;
}

.table-type01-company th, .table-type01-company td {
    padding        : 10px;
    vertical-align : middle;
    text-align     : left;
    font-weight    : bold;
}

.table-type01-company th {
    font-weight  : bold;
    width        : auto;
    box-sizing   : border-box;
    border-right : 1px #d8d8d8 solid;
    text-align   : center;
}

.table-type01-company th:nth-child(6) {
    width : 220px;
}

.table-type01-company th:last-child {
    width : 200px;
}

.table-type01-company td.Softbank {
    color : #5f5f5f;
}

.table-type01-company td.docomo {
    color : #c30837;
}

.table-type01-company td.au {
    color : #f65e1d;
}

.table-type01-company td.Ymobile {
    color : #e73533;
}

.table-type01-company td.UQmobile {
    color : #0099ff;
}

.table-type01-company td.SIMフリー {
    color : #bb8a52;
}

.table-type02 {
    color           : #676767;
    width           : 100%;
    border          : 1px solid #ccc;
    border-collapse : separate;
    border-spacing  : 0;
    border-radius   : 4px;
    overflow        : hidden;
}

.table-type02 tr:nth-child(odd) {
    background : #fbfbfb;
}

.table-type02 th, .table-type02 td {
    padding        : 1em;
    border-bottom  : 1px solid #e0e0e0;
    vertical-align : middle;
}

.table-type02 tr:last-child th, .table-type02 tr:last-child td {
    border-bottom : none;
}

.table-type02 th {
    border-right : 1px solid #e0e0e0;
    font-weight  : bold;
    width        : 6em;
}

.table-type03 {
    color           : #676767;
    width           : 100%;
    border          : 1px solid #ccc;
    border-collapse : separate;
    border-spacing  : 0;
    border-radius   : 4px;
    overflow        : hidden;
}

.table-type03 tr:nth-child(odd) {
    background : #fbfbfb;
}

.table-type03 th, .table-type03 td {
    padding        : 1em .6em;
    border-bottom  : 1px solid #e0e0e0;
    vertical-align : middle;
}

.table-type03 tr:last-child th, .table-type03 tr:last-child td {
    border-bottom : none;
}

.table-type03 td {
    border-right : 1px solid #e0e0e0;
}

.table-type03 td:last-child {
    border-right : none;
}

.table-type03 th {
    font-weight : bold;
}

.table-type04 {
    width : 100%;
}

.table-type04 th, .table-type04 td {
    display    : block;
    width      : 100%;
    text-align : left;
}

.table-type04 th {
    font-weight    : bold;
    font-size      : 18px;
    font-size      : 1.8rem;
    line-height    : 1.4;
    padding-bottom : .8em;
}

.table-type04 th span {
    display        : inline-block;
    font-size      : 60%;
    padding        : .2em .5em;
    background     : #e60007;
    color          : #fff;
    vertical-align : middle;
}

.table-type04 td {
    padding-bottom : 2em;
    font-size      : 16px;
    font-size      : 1.6rem;
}

/* list */
.list-type01 {
    font-size   : 16px;
    font-size   : 1.6rem;
    font-weight : bold;
}

.list-type01 li {
    border-bottom : 2px solid;
}

.list-type01 .item-inner {
    display : table;
    width   : 100%;
    padding : .8em 0;
}

.list-type01 .item-label {
    display       : table-cell;
    padding-right : 1em;
    width         : 10em;
}

.list-type01 .item-text {
    display : table-cell;
}

.list-type02 .list-item {
    width      : 49%;
    margin-top : 2%;
    position   : relative;
}

.list-type02 .list-item:nth-child(2n) {
    margin-left : auto;
}

.list-type02 .list-item:first-child, .list-type02 .list-item:nth-child(2) {
    margin-top : 0;
}

.list-type02 .item-inner {
    position : relative;
    display  : block;
    color    : #fff;
    z-index  : 1;
}

.list-type02 .item-inner:hover .item-text:after {
    right : 1em;
}

.list-type02 .item-text {
    position       : absolute;
    font-size      : 24px;
    font-size      : 2.4rem;
    width          : 100%;
    padding        : 0 2em;
    letter-spacing : .085em;
    box-sizing     : border-box;
    top            : 50%;
    margin-top     : -.8em;
    z-index        : 1;
}

.list-type02 .item-text:after {
    content            : "";
    width              : 46px;
    height             : 24px;
    background-image   : url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2045%2024%22%3E%3Cpolygon%20points%3D%2237%2014%200%2014%200%2010%2037%2010%2030%203%2033%200%2045.01%2012%2033%2024%2030%2021%2037%2014%22%20style%3D%22fill%3A%23fff%3B%22%20%2F%3E%3C%2Fsvg%3E");
    background-repeat  : no-repeat;
    position           : absolute;
    right              : 2em;
    top                : 50%;
    margin-top         : -12px;
    -webkit-transition : .2s;
    transition         : .2s;
}

.list-type02 .item-image {
    position : relative;
}

.list-type02 .item-image:after {
    content    : "";
    width      : 100%;
    height     : 100%;
    position   : absolute;
    top        : 0;
    left       : 0;
    background : rgba(255, 198, 76, .7);
}

.list-type03 .list-item {
    width         : 31%;
    margin-right  : 3.5%;
    margin-bottom : 3.5%;
    background    : #fff;
}

.list-type03 .list-item:nth-child(3n) {
    margin-right : 0;
}

.list-type03 .item-inner {
    padding : 8px;
}

.list-type04 .list-item {
    width    : 50%;
    position : relative;
}

.list-type04 .item-text {
    position          : absolute;
    width             : 100%;
    z-index           : 1;
    text-align        : center;
    left              : 0;
    top               : 50%;
    color             : #fff;
    -webkit-transform : translateY(-50%);
    transform         : translateY(-50%);
}

.list-type04 .txt-en {
    font-size      : 62px;
    font-size      : 6.2rem;
    font-family    : "Oswald", sans-serif;
    letter-spacing : .075em;
    font-weight    : 900;
    text-shadow    : 1px 1px 2px rgba(0, 0, 0, .6);
}

.list-type04 .txt-ja {
    font-size   : 22px;
    font-size   : 2.2rem;
    text-shadow : 1px 1px 2px rgba(0, 0, 0, .6);
}

.list-type04 a {
    display : block;
}

.list-type04 a:after {
    content            : "";
    opacity            : 0;
    width              : 100%;
    height             : 100%;
    position           : absolute;
    top                : 0;
    left               : 0;
    background         : rgba(0, 0, 0, .6);
    -webkit-transition : .3s;
    transition         : .3s;
}

.list-type04 a .item-image {
    overflow : hidden;
}

.list-type04 a .item-image img {
    -webkit-transition : .7s;
    transition         : .7s;
}

.list-type04 a:hover {
    opacity : 1;
}

.list-type04 a:hover:after {
    opacity : 1;
}

.list-type04 a:hover .item-image img {
    -webkit-transform : scale(1.1);
    transform         : scale(1.1);
}

/* column */
.column-type01 {
    -webkit-align-items     : center;
    align-items             : center;
    -webkit-justify-content : space-between;
    justify-content         : space-between;
}

.col {
    box-sizing : border-box;
}

.col-w18 {
    width : 20%;
}

.col-w20 {
    width : 20%;
}

.col-w24 {
    width : 24%;
}

.col-w25 {
    width : 25%;
}

.col-w32 {
    width : 32%;
}

.col-w33 {
    width : 33.333333%;
}

.col-w50 {
    width : 50%;
}

.col-w30 {
    width : 30%;
}

.col-w40 {
    width : 40%;
}

.col-w46 {
    width : 46%;
}

.col-w50 {
    width : 50%;
}

.col-w56 {
    width : 56%;
}

.col-w60 {
    width : 60%;
}

.col-w66 {
    width : 66%;
}

/* textbox */
.textbox-type01 {
    padding    : 2%;
    box-sizing : border-box;
}

.textbox-type01 .box-title {
    margin-bottom : 1em;
}

.textbox-type01 .box-text {
    margin-bottom : 1em;
    font-size     : 20px;
    font-size     : 2rem;
    font-weight   : bold;
}

/* article */
.article-type01 {
    margin-bottom : 6%;
}

.article-type01 .article-header {
    margin-bottom : 1.5em;
}

.article-type01 .article-thumb {
    text-align    : center;
    margin-bottom : 1em;
}

.article-type01 .article-thumb img {
    height : auto;
}

/* pager */
.pagenav {
    text-align : center;
    margin-top : 2em;
}

.pagenav a {
    color   : #848484;
    display : block;
    padding : .4em 1.5em;
    border  : 2px solid #e10126;
}

.pagenav .prev, .pagenav .next {
    display        : inline-block;
    vertical-align : middle;
    margin         : 0 8px;
}

.pager-type01 {
    text-align : center;
    margin-top : 4%;
}

.pager-type01 span, .pager-type01 a {
    display        : inline-block;
    margin         : 0 4px;
    vertical-align : middle;
    background     : #fff;
    line-height    : 32px;
    border         : 1px solid #e10126;
    padding        : .1em 1em 0;
    font-weight    : bold;
}

.pager-type01 .current {
    background : #e10126;
    color      : #fff;
}

.pager-type01 .next, .pager-type01 .prev {
    background : none;
    border     : none;
    padding    : 0;
}

.pager-type02 {
    text-align : center;
    margin-top : 4%;
}

.pager-type02 li {
    display        : inline-block;
    vertical-align : middle;
    width          : 80px;
    font-size      : 12px;
    font-size      : 1.2rem;
    margin         : 0 .4em;
}

.pager-type02 li a {
    display : block;
    border  : 2px solid #666;
    padding : .4em;
}

.pager-type02 .all a {
    border-color : #e10126;
    background   : #e10126;
    color        : #fff;
}

/* flexbox */
.flexbox {
    overflow          : hidden;
    display           : -webkit-flex;
    display           : -moz-flex;
    display           : -ms-flexbox;
    display           : flex;
    -ms-flex-pack     : justify;
    -ms-flex-wrap     : wrap;
    -webkit-flex-wrap : wrap;
    flex-wrap         : wrap;
}

@media only screen and (max-width : 1024px) {
    /* layout */
    .layout-type01 {
        padding : 0 20px;
    }

    .table-scroll table {
        display                    : block;
        overflow-x                 : scroll;
        white-space                : nowrap;
        -webkit-overflow-scrolling : touch;
    }
}

@media only screen and (max-width : 768px) {
    /* layout */
    .layout-type01 {
        padding : 0 10px;
    }

    /* title */
    .title-type01 {
        font-size      : 18px;
        font-size      : 1.8rem;
        border-width   : 2px;
        padding-bottom : .3em;
    }

    .title-type02 {
        font-size : 18px;
        font-size : 1.8rem;
    }

    .title-type03 {
        font-size      : 18px;
        font-size      : 1.8rem;
        border-width   : 2px;
        padding-bottom : .3em;
    }

    .title-type04 .ttl-main {
        font-size : 20px;
        font-size : 2rem;
    }

    .title-type04 .ttl-sub {
        font-size : 14px;
        font-size : 1.4rem;
    }

    .title-type05 .ttl-main {
        font-size : 20px;
        font-size : 2rem;
    }

    .title-type05 .ttl-sub {
        font-size : 14px;
        font-size : 1.4rem;
    }

    .title-type06 {
        font-size    : 18px;
        font-size    : 1.8rem;
        border-width : 2px;
    }

    .title-type07 {
        font-size : 18px;
        font-size : 1.8rem;
    }

    .title-type08 {
        font-size : 18px;
        font-size : 1.8rem;
    }

    .title-type09 .ttl-main {
        font-size : 38px;
        font-size : 3rem;
    }

    .title-type10 .ttl-en {
        font-size : 26px;
        font-size : 2.6rem;
    }

    .title-type10 .ttl-ja {
        font-size : 18px;
        font-size : 1.8rem;
    }

    .title-type10 .ttl-catch {
        font-size  : 14px;
        font-size  : 1.4rem;
        margin-top : .5em;
    }

    /* btn */
    .btn-type02 {
        font-size : 14px;
        font-size : 1.4rem;
    }

    .btn-type03 {
        font-size : 14px;
        font-size : 1.4rem;
    }

    .btn-type04 {
        font-size : 14px;
        font-size : 1.4rem;
    }

    .btn-type05 {
        font-size : 16px;
        font-size : 1.6rem;
    }

    /* list */
    .list-type01 {
        font-size : 14px;
        font-size : 1.4rem;
    }

    .list-type01 .item-label {
        display : block;
    }

    .list-type01 .item-text {
        display : block;
    }

    .list-type02 .list-item {
        width : 100%;
    }

    .list-type02 .list-item:nth-child(2) {
        margin-top : 2%;
    }

    .list-type02 .item-text {
        font-size : 20px;
        font-size : 2rem;
        padding   : 0 1em;
    }

    .list-type02 .item-text:after {
        width      : 23px;
        height     : 12px;
        right      : 1em;
        margin-top : -6px;
    }

    .list-type03 .list-item {
        width         : 49%;
        margin-right  : 2%;
        margin-bottom : 2%;
        background    : #fff;
    }

    .list-type03 .list-item:nth-child(3n) {
        margin-right : 2%;
    }

    .list-type03 .list-item:nth-child(2n) {
        margin-right : 0;
    }

    .list-type03 .item-inner {
        padding : 2px;
    }

    .list-type04 .list-item {
        width         : 100%;
        margin-bottom : 2%;
    }

    .list-type04 .txt-en {
        font-size : 36px;
        font-size : 3.6rem;
    }

    .list-type04 .txt-ja {
        font-size : 16px;
        font-size : 1.6rem;
    }

    /* textbox */
    .textbox-type01 {
        padding : 4%;
    }

    .textbox-type01 .box-text {
        font-size : 16px;
        font-size : 1.6rem;
    }

    /* table */
    .table-type04 th {
        font-size : 16px;
        font-size : 1.6rem;
    }

    .col-w18 {
        width : 48%;
    }
}

@media only screen and (max-width : 480px) {
    /* column */
    .column-type01 .col {
        width         : 100% !important;
        margin-bottom : 1em;
    }

    .col-o1 {
        order : 1;
    }

    .col-o2 {
        order : 2;
    }

    /* pager */
    .pager-type01 span, .pager-type01 a {
        margin      : 0 2px;
        line-height : 26px;
        padding     : .1em .6em 0;
    }

    /* list */
    .list-type03 .list-item {
        width         : 100%;
        margin-right  : 0 !important;
        margin-bottom : 2%;
    }
}

/*------------------------------------------
  header
------------------------------------------*/
.cmn-header {
    position   : fixed;
    width      : 100%;
    background : #FEFEFE;
    top        : 0;
    left       : 0;
    z-index    : 10;
}

.header-contents {
    -webkit-align-items : center;
    align-items         : center;
}

.header-logo {
    margin-right : auto;
}

.header-logo a img {
    width     : 100%;
    max-width : 350px;
}

.header-contact {
    margin-left : 2%;
}

.header-contact .btn-contact {
    display    : block;
    background : #e10126;
    color      : #fff;
    text-align : center;
    padding    : 1.5em;
}

.header-contact .btn-contact i {
    display        : block;
    font-size      : 180%;
    padding-bottom : .2em;
}

.header-info {
    text-align : center;
}

.header-info .info-text {
    color         : #e10126;
    font-weight   : bold;
    margin-bottom : 1em;
    font-size     : 15px;
    font-size     : 1.5rem;
    text-align    : left;
}

.header-info .info-text p {
    display        : inline-block;
    vertical-align : middle;
}

.header-info .phone {
    position  : relative;
    font-size : 20px;
    font-size : 3.5rem;
    margin    : 0 5%;
    top       : 25px;
}

.header-info .phone a {
    color : #e10126;
}

.header-info .phone i {
    -webkit-transform : rotateY(180deg);
    transform         : rotateY(180deg);
}

.gnav {
    font-weight   : bold;
    margin-bottom : 10px;
}

.gnav-toggle {
    display : none;
}

.gnav-item {
    border-right : 1px solid #c5c5c5;
    line-height  : 1.1;
}

.gnav-item:last-child {
    border-right : none;
}

.gnav-link {
    display   : block;
    padding   : 0 1em;
    font-size : 16px;
    font-size : 1.6rem;
}

@media only screen and (max-width : 1024px) {
    .cmn-header {
        border-bottom : 1px solid #f0f0f0;
        position      : static;
    }

    .header-contents {
        padding-top    : 15px;
        padding-bottom : 15px;
    }

    .header-logo {
        padding-top : 0;
    }

    .header-info .info-text {
        display : none;
    }

    .header-contact {
        display : none;
    }

    .gnav-list {
        display            : block;
        position           : fixed;
        width              : 40%;
        height             : 100vh;
        background         : #e10126;
        left               : -40%;
        top                : 0;
        z-index            : 2;
        -webkit-transition : .4s;
        transition         : .4s;
    }

    .gnav-list-open {
        left               : 0 !important;
        border-right       : 1px solid #f0f0f0;
        -webkit-transition : .4s;
        transition         : .4s;
    }

    .gnav-item {
        border-right  : none;
        border-bottom : 1px solid #f0f0f0;
    }

    .gnav-link {
        color   : #fff;
        padding : 1.5em;
    }

    .gnav-toggle {
        z-index               : 20;
        position              : fixed;
        top                   : 15px;
        right                 : 20px;
        display               : block;
        cursor                : pointer;
        width                 : 50px;
        height                : 50px;
        background            : #e10126;
        -webkit-border-radius : 50%;
        border-radius         : 50%;
    }

    .gnav-toggle .toggle-icon {
        position : relative;
    }

    .gnav-toggle .toggle-icon div {
        position : absolute;
        width    : 22px;
        height   : 20px;
        top      : 15px;
        left     : 14px;
    }

    .gnav-toggle .toggle-icon span {
        -webkit-transition : .2s;
        transition         : .2s;
        display            : block;
        width              : 100%;
        height             : 2px;
        background         : #fff;
        position           : absolute;
        left               : 0;
    }

    .gnav-toggle .toggle-icon span:nth-of-type(1) {
        top : 0;
    }

    .gnav-toggle .toggle-icon span:nth-of-type(2) {
        top        : 50%;
        margin-top : -1px;
    }

    .gnav-toggle .toggle-icon span:nth-of-type(3) {
        bottom : 0;
    }

    .gnav-toggle.gnav-open .toggle-icon span {
        -webkit-transition : .2s;
        transition         : .2s;
    }

    .gnav-toggle.gnav-open .toggle-icon span:nth-of-type(1) {
        -webkit-transform : translateY(9px) rotate(-45deg);
        transform         : translateY(9px) rotate(-45deg);
    }

    .gnav-toggle.gnav-open .toggle-icon span:nth-of-type(2) {
        opacity : 0;
    }

    .gnav-toggle.gnav-open .toggle-icon span:nth-of-type(3) {
        -webkit-transform : translateY(-9px) rotate(45deg);
        transform         : translateY(-9px) rotate(45deg);
    }
}

@media only screen and (max-width : 480px) {
    .header-contents {
        padding : 10px 0;
    }

    .header-logo {
        text-align : center;
        width      : 100%;
        margin     : 0;
    }

    .header-logo img {
        max-width : 120px !important;
    }

    .gnav-toggle {
        display : none;
    }

    .gnav-list {
        width   : 60%;
        left    : -60%;
        z-index : 6;
    }
}

/*------------------------------------------
  footer
------------------------------------------*/
.cmn-footer {
    width      : 100%;
    position   : absolute;
    left       : 0;
    bottom     : 0;
    background : #1B1919;
    z-index    : 10;
}

.cmn-footer:before {
    content    : "";
    width      : 100%;
    height     : 30px;
    background : #333;
    position   : absolute;
    top        : 0;
    left       : 0;
}

.footer-contents {
    padding-top    : 6%;
    padding-bottom : 4%;
    color          : #fff;
    position       : relative;
}

.footer-contents a {
    color : #fff;
}

.footer-info {
    margin-right : 8%;
}

.footer-info .info-logo {
    text-align    : center;
    margin-bottom : 1em;
}

.footer-info .link-tel {
    font-size   : 18px;
    font-size   : 1.8rem;
    font-weight : bold;
}

.footer-nav {
    margin-left : 5%;
}

.footer-nav li {
    margin-bottom : 1em;
}

.footer-nav i {
    /*color: #f4d67c;*/
    color     : #e10126;
    font-size : 90%;
}

.footer-pagetop {
    position   : absolute;
    right      : 0;
    bottom     : 0;
    text-align : center;
}

.footer-pagetop a {
    display    : block;
    width      : 64px;
    padding    : 1.2em 0 1em;
    background : #fff;
}

.footer-pagetop i {
    color     : #e10126;
    font-size : 30px;
    font-size : 3rem;
}

.footer-copyright {
    background    : #333;
    text-align    : center;
    color         : #aeaeae;
    font-size     : 12px;
    font-size     : 1.2rem;
    border-top    : 1px solid #5b5b5b;
    border-bottom : 1px solid #5b5b5b;
    padding       : 1em 0;
}

.sp-footer-menu {
    display : none;
}

@media only screen and (max-width : 1024px) {
    .footer-info {
        width         : 100%;
        margin-right  : 0;
        margin-bottom : 4%;
        text-align    : center;
    }

    .footer-info .info-logo {
        display : inline-block;
        padding : 0em;
    }

    .footer-nav {
        margin     : 0;
        width      : 100%;
        text-align : center;
    }

    .footer-nav li {
        display : inline-block;
        margin  : 0 .4em .6em;
    }
}

@media only screen and (max-width : 768px) {
    .cmn-footer:before {
        height : 15px;
    }

    .footer-pagetop a {
        width   : 46px;
        padding : .6em 0 .4em;
    }

    .footer-pagetop i {
        font-size : 26px;
        font-size : 2.6rem;
    }
}

@media only screen and (max-width : 480px) {
    .cmn-footer {
        padding-bottom : 80px;
    }

    .footer-nav {
        font-size : 12px;
        font-size : 1.2rem;
    }

    .sp-footer-menu {
        display       : block;
        border-top    : 1px solid #f0f0f0;
        border-bottom : 1px solid #f0f0f0;
        background    : #f0f0f0;
        position      : fixed;
        right         : 0;
        bottom        : 0;
        width         : 100%;
        z-index       : 20;
    }

    .sp-footer-menu .menu-item {
        width       : 25%;
        height      : 80px;
        text-align  : center;
        display     : table;
        border-left : 1px solid #f0f0f0;
        position    : relative;
        box-sizing  : border-box;
    }

    .sp-footer-menu .menu-item a, .sp-footer-menu .menu-item span {
        display        : table-cell;
        vertical-align : middle;
        background     : #e10126;
        color          : #f0f0f0;
        font-weight    : bold;
        font-size      : 12px;
        font-size      : 1.2rem;
    }

    .sp-footer-menu .menu-item i {
        display       : block;
        font-size     : 30px;
        font-size     : 3rem;
        margin-bottom : .2em;
    }
}

/*------------------------------------------
  contents
------------------------------------------*/
.cmn-main {
    padding-bottom : 6%;
}

.cmn-pagetitle {
    position : relative;
}

.cmn-pagetitle .pagetitle-image {
    width : 80%;
    float : right;
}

.cmn-pagetitle .pagetitle-image img {
    width : 100%;
}

.cmn-pagetitle .pagetitle-text {
    width             : 34%;
    position          : absolute;
    border-bottom     : 2px solid #e10126;
    left              : 6%;
    top               : 50%;
    -webkit-transform : translateY(-50%);
    transform         : translateY(-50%);
}

.cmn-pagetitle .ttl-en {
    font-family    : "Oswald", sans-serif;
    color          : #e10126;
    font-weight    : 900;
    font-size      : 60px;
    font-size      : 6rem;
    line-height    : 1.1;
    letter-spacing : .075em;
}

.cmn-pagetitle .ttl-ja {
    font-weight : bold;
    font-size   : 28px;
    font-size   : 2.8rem;
    margin-top  : .6em;
}

.cmn-breadcrumb {
    padding : 1em 0;
}

.cmn-breadcrumb ul {
    width : 80%;
    float : right;
    color : #e10126;
}

.cmn-breadcrumb a {
    color : #e10126;
}

.sammary-section {
    padding : 4% 0 0;
}

.sammary-section .section-header {
    margin-bottom : 1em;
}

.sammary-section-type01 .section-contents {
    background : #fff;
    box-shadow : 5px 5px 5px -2px rgba(0, 0, 0, .4);
}

.sammary-section-type01 .sammary-text {
    padding : 1.5em 1em;
}

.sammary-section-type02 .section-contents {
    background  : #fff;
    align-items : flex-end;
}

.sammary-section-type02 .sammary-text {
    padding : 3em 2em;
}

.sammary-section-type02 .sammary-image {
    padding-top   : 4%;
    padding-right : 4%;
}

.sammary-section-type02 .sammary-image-inner {
    background      : #e10126;
    background-size : 80%;
    color           : #fff;
    position        : relative;
    padding         : 4em 0;
    font-weight     : bold;
    font-size       : 22px;
    font-size       : 2.2rem;
}

.page-section {
    padding : 4% 0;
}

.page-section .section-header {
    margin-bottom : 1.5em;
}

.contents-block {
    margin-bottom : 2em;
}

.contents-block:last-child {
    margin-bottom : 0;
}

@media only screen and (max-width : 768px) {
    .cmn-pagetitle .pagetitle-image {
        width : 100%;
    }

    .cmn-pagetitle .pagetitle-text {
        display : none;
        width   : 60%;
        left    : 10px;
    }

    .cmn-pagetitle .ttl-en {
        font-size   : 36px;
        font-size   : 3.6rem;
        text-shadow : 1px 1px 2px rgba(0, 0, 0, .6);
    }

    .cmn-pagetitle .ttl-ja {
        font-size   : 18px;
        font-size   : 1.8rem;
        text-shadow : 1px 1px 2px rgba(0, 0, 0, .6);
    }

    .cmn-breadcrumb {
        padding : .6em 10px;
    }

    .cmn-breadcrumb ul {
        width     : 100%;
        font-size : 12px;
        font-size : 1.2rem;
    }

    .sammary-section-type01 .col {
        width : 100%;
    }

    .sammary-section-type02 .col {
        width : 100%;
    }

    .sammary-section-type02 .sammary-text {
        padding : 1.5em 1em;
    }

    .sammary-section-type02 .sammary-image {
        display : none;
    }

    .sammary-section {
        padding-top : 6%;
    }

    .page-section {
        padding-top : 6%;
    }
}

/*------------------------------------------
  home
------------------------------------------*/
.cmn-main-top {
    padding-bottom : 0;
}

.top-section {
    position : relative;
    z-index  : 5;
}

.top-section01 {
    padding-bottom : 2%;
    position       : absolute;
    left           : 0;
    width          : 100%;
    z-index        : 1;
}

.top-section01 .main-slider {
    width : 100%;
}

.top-section01 .slick-dots {
    position   : absolute;
    bottom     : 10px;
    right      : 10px;
    text-align : right;
}

.top-section01 .slick-dots li {
    font-size : 0;
}

.top-section01 .slick-dots button {
    cursor             : pointer;
    outline-style      : none;
    display            : inline-block;
    margin             : 0;
    padding            : 0;
    width              : 8px;
    height             : 8px;
    margin-top         : 8px;
    border-radius      : 50%;
    text-indent        : 100%;
    white-space        : nowrap;
    overflow           : hidden;
    border             : none;
    background         : #fff;
    -webkit-transition : .3s;
    transition         : .3s;
}

.top-section01 .slick-dots .slick-active button {
    background            : #e10126;
    width                 : 50px;
    -webkit-border-radius : 15px;
    border-radius         : 15px;
}

.top-section01 .main-catch {
    position  : absolute;
    top       : 50%;
    left      : 10%;
    transform : translate(0%, -50%);
}

.top-section01 .new-arrivals {
    width    : 100%;
    position : absolute;
    z-index  : 1;
    bottom   : 0;
}

.top-section01 .new-arrivals .title, .top-section01 .new-arrivals .contents {
    display        : table-cell;
    vertical-align : middle;
    box-sizing     : border-box;
}

.top-section01 .new-arrivals .title {
    text-align  : center;
    width       : 20%;
    font-size   : 20px;
    font-size   : 2rem;
    font-weight : bold;
    background  : #000;
    color       : #fff;
}

.top-section01 .new-arrivals .contents {
    width       : 80%;
    padding     : 0 2em;
    line-height : 1.5;
}

.top-section01 .new-arrivals .contents a {
    display : block;
}

.top-section01 .new-arrivals .contents p {
    display        : inline-block;
    vertical-align : middle;
    font-size      : 15px;
    font-size      : 1.5rem;
}

.top-section01 .new-arrivals .contents .date {
    color        : #e10126;
    line-height  : 1.2;
    margin-right : 10px;
}

.top-section01 .new-arrivals .contents .text {
    font-weight : bold;
}

.top-section01 .new-arrivals-inner {
    width      : 100%;
    max-width  : 1080px;
    height     : 54px;
    margin     : auto;
    background : #fff;
    display    : table;
}

.top-section01 .c-title {
    font-family    : "Oswald", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "MS PGothic", sans-serif;
    color          : #e10126;
    font-size      : 66px;
    font-size      : 6.6rem;
    font-weight    : 900;
    line-height    : 1.2;
    letter-spacing : .075em;
}

.top-section01 .c-text01 {
    font-size   : 20px;
    font-size   : 2rem;
    font-weight : bold;
    margin-top  : .6em;
    color       : #676767;
}

.top-section01 .c-text02 {
    margin-top  : 2em;
    color       : #676767;
    font-weight : bold;
    line-height : 1.5;
}

.top-section03 {
    text-align : center;
    color      : #fff;
    background : #333;
    padding    : 2em 0;
    font-size  : 30px;
    font-size  : 3rem;
}

.top-section04 {
    /* padding: 4% 0 0; */
    background : #fff;
}

.top-section04.iPad {
    background : #fff;
}

.top-section04 .section-contents {
    font-weight : bold;
}

.top-section04 .section-header {
    padding-left : 12%;
    color        : #e10126;
    position     : relative;
    display      : inline-block;
    background   : url(../images/common/border01.png) repeat-x bottom;
}

.top-section04 .col-text {
    background    : #efefef;
    padding       : 2% 1%;
    margin        : 1em 2em;
    border-radius : 10px;
}

@media (max-width : 768px) {
    .top-section04 .col-text {
        margin : .5em auto;
    }
}

.top-section04 .col-text.empty {
    background : #fff;
}

.top-section04 .col a span.iphone {
    position      : relative;
    display       : block;
    border-radius : 50%;
    padding       : 20px;
    box-sizing    : border-box;
    background    : #fff;
    width         : 160px;
    height        : 160px;
    margin        : 0 auto;
}

.top-section04 .col a span.iphone img {
    position  : absolute;
    top       : 50%;
    left      : 50%;
    transform : translate(-50%, -50%);
    max-width : 100px;
}

.top-section05 {
    /* text-align: center;
  color: #fff;
  background: url(../images/top/bg-recruit.png) no-repeat center top;
  background-size: cover;
  padding: 10% 0 5%; */
    background : #fff;
}

@media only screen and (max-width : 1024px) {
    .top-section01 {
        position : relative;
        top      : 0 !important;
    }

    .top-section01 .main-slider {
        width : 100%;
    }
}

@media only screen and (max-width : 768px) {
    .top-section01 .main-catch {
        padding           : 4% 2% 2%;
        clear             : both;
        position          : static;
        -webkit-transform : translateY(0);
        transform         : translateY(0);
    }

    .top-section01 .c-title {
        font-size : 38px;
        font-size : 3.8rem;
    }

    .top-section01 .c-text01 {
        font-size   : 14px;
        font-size   : 1.4rem;
        line-height : 1.5;
    }

    .top-section01 .c-text02 {
        font-size  : 12px;
        font-size  : 1.2rem;
        margin-top : 1em;
    }

    .top-section01 .new-arrivals {
        position : static;
    }

    .top-section01 .new-arrivals .title {
        font-size : 16px;
        font-size : 1.6rem;
    }

    .top-section01 .new-arrivals .contents p {
        font-size : 14px;
        font-size : 1.4rem;
    }

    .top-section03 {
        font-size : 20px;
        font-size : 2rem;
    }

    .top-section04 .section-header {
        padding-left    : 4%;
        background-size : 3px;
        margin-bottom   : 2%;
    }

    .top-section04 .col-text {
        font-size : 14px;
        font-size : 1.4rem;
    }

    .top-section04 .col-image {
        font-size : 16px;
        font-size : 1.6rem;
    }
}

/*------------------------------------------
  iphone
------------------------------------------*/
.tab-btn p {
    display : inline-block;
    margin  : 0 5px 20px;
}

.tab-btn p a {
    border        : 1px solid #e10126;
    background    : #e10126;
    color         : #fff;
    padding       : 5px 20px;
    box-sizing    : border-box;
    border-radius : 20px;
}

.tab-btn p a:hover {
    background : #fff;
    color      : #e10126;
    opacity    : 1;
}

/*------------------------------------------
  business
------------------------------------------*/
.cmn-main-business {
    background     : #f5f4f2;
    padding-bottom : 0;
}

.cmn-main-business .sammary-section {
    padding-bottom : 6%;
    font-size      : 16px;
    font-size      : 1.6rem;
}

.cmn-main-business .sammary-section .section-contents {
    align-items : flex-start;
}

.cmn-main-business .sammary-section .sammary-text {
    padding-left  : 3em;
    padding-right : 0;
}

.cmn-main-business .sammary-section .catch {
    font-size     : 18px;
    font-size     : 1.8rem;
    font-weight   : bold;
    margin-bottom : 5px;
}

.cmn-main-business .sammary-section .textlist {
    color       : #e10126;
    font-weight : bold;
}

.cmn-main-business .sammary-section .textlist li {
    margin-bottom : 5px;
}

.cmn-main-business .sammary-section .textlist li:last-child {
    margin-bottom : 0;
}

.cmn-main-business .sammary-section .textlist i {
    color : #00877d;
}

.cmn-main-business .sammary-bottom {
    padding : 3em;
}

.cmn-main-business .page-section {
    background : #fff;
    padding    : 6% 0;
    border-top : 6px solid #f4d67c;
}

@media only screen and (max-width : 768px) {
    .cmn-main-business .sammary-section {
        font-size : 14px;
        font-size : 1.4rem;
    }

    .cmn-main-business .sammary-section .sammary-text {
        padding-left  : 1em;
        padding-right : 1em;
    }

    .cmn-main-business .sammary-section .catch {
        font-size : 16px;
        font-size : 1.6rem;
    }

    .cmn-main-business .sammary-bottom {
        padding : 2em 1em;
    }
}

/*------------------------------------------
  facility
------------------------------------------*/
.cmn-main-facility {
    padding-bottom : 0;
    background     : #f5f4f2;
}

.cmn-main-facility .sammary-section {
    padding-bottom : 4%;
}

.cmn-main-facility .facilitylist {
    align-items : flex-start;
}

.cmn-main-facility .facilitylist .name {
    font-weight : bold;
    margin-top  : 5px;
}

.cmn-main-facility .facilitylist .col {
    margin-bottom : 15px;
}

.cmn-main-facility .page-section {
    background : #fff;
    padding    : 6% 0;
}

@media only screen and (max-width : 768px) {
    .cmn-main-facility .facilitylist {
        max-width : 540px;
        margin    : auto;
    }

    .cmn-main-facility .facilitylist .col-w24 {
        width : 48%;
    }
}

@media only screen and (max-width : 480px) {
    .cmn-main-facility .facilitylist .col-w24 {
        width : 48% !important;
    }
}

/*------------------------------------------
  access
------------------------------------------*/
.cmn-main-access {
    background     : #f5f4f2;
    padding-bottom : 0;
}

.cmn-main-access .sammary-section {
    padding-bottom : 6%;
}

.cmn-main-access .page-section {
    background : #111;
}

.cmn-main-access .sammary-text i {
    color : #00877d;
}

.cmn-main-access .map-block {
    background : #fff;
    padding    : 10px;
}

.cmn-main-access .map-block iframe {
    vertical-align : bottom;
}

.cmn-main-access .btn-contact i {
    -webkit-transform : rotate(45deg);
    transform         : rotate(45deg);
}

/*------------------------------------------
  products
------------------------------------------*/
.cmn-main-products {
    background     : #f5f4f2;
    padding-bottom : 6%;
}

.cmn-main-products .btn-more {
    margin : auto;
    cursor : pointer;
}

/*------------------------------------------
  sitemap
------------------------------------------*/
#sitemap_list {
    max-width : 800px;
    margin    : auto;
}

#sitemap_list li {
    margin-bottom : 1.5em;
}

#sitemap_list a {
    display  : block;
    padding  : .5em 1em;
    border   : 2px solid #e10126;
    position : relative;
}

#sitemap_list a:after {
    content           : "";
    display           : block;
    width             : 6px;
    height            : 6px;
    border-top        : 2px solid #e10126;
    border-right      : 2px solid #e10126;
    -webkit-transform : rotate(45deg);
    transform         : rotate(45deg);
    position          : absolute;
    right             : 1.2em;
    top               : 50%;
    margin-top        : -4px;
}

/*------------------------------------------
  contact
------------------------------------------*/
.form-section .section-inner {
    max-width : 730px;
}

.form-section .section-inner2 {
    max-width : 1200px;
}

.form-block .txt-form {
    margin-bottom : 4%;
}

.form-block .txt-form-conf {
    display : none;
}

.form-block .input-text input, .form-block .input-textarea textarea {
    width      : 100%;
    border     : 1px solid #c9c9c9;
    background : #f2f2f2;
}

.form-block .input-text input:focus, .form-block .input-textarea textarea:focus {
    background : #fff;
}

.form-block .input-text input {
    height  : 36px;
    padding : 0 .5em;
}

.form-block .input-textarea textarea {
    padding : .5em;
}

.form-block .input-submit {
    background : #f2f2f2;
}

.form-block .input-submit {
    text-align : center;
    margin-top : 2em;
    padding    : 3em 1em;
}

.form-block .caution-privacy {
    margin-bottom : 1.5em;
}

.form-block .input-submit span {
    display        : inline-block;
    vertical-align : middle;
    margin         : 0 8px;
}

.form-block .input-submit input[type="submit"] {
    height  : 50px;
    padding : 0 30px;
}

.form-block .input-submit .back input[type="submit"] {
    background : #ccc;
}

.form-block .input-submit .enter input[type="submit"] {
    background : #e10126;
    color      : #fff;
}

.mw_wp_form_preview .form-block .txt-form-entry {
    display : none;
}

.mw_wp_form_preview .form-block .txt-form-conf {
    display : block;
}

.mw_wp_form_preview .form-block .input-submit {
    background : none;
    padding    : 0;
}

.mw_wp_form_preview .form-block .caution-privacy {
    display : none;
}

/*------------------------------------------
  Clearfix
------------------------------------------*/
.clearfix, .cmn-pagetitle, .cmn-breadcrumb, .top-section01 {
    *zoom : 1;
}

.clearfix:after, .cmn-pagetitle:after, .cmn-breadcrumb:after, .top-section01:after {
    visibility : hidden;
    display    : block;
    font-size  : 0;
    content    : " ";
    clear      : both;
    height     : 0;
}

.station-title {
    text-align     : center;
    font-size      : 2.5rem;
    background     : #E10226;
    color          : #fff;
    font-weight    : bold;
    letter-spacing : 1.5px;
    margin-bottom  : 20px;
}

.station-block {
    display         : flex;
    justify-content : space-between;
    flex-wrap       : wrap;
}

.station-acess-img {
    margin-bottom : 20px;
}

.station-acess-img:not(:last-child) {
    margin-right : 20px;
}

.station-acess-img img {
    width          : 300px;
    height         : 300px;
    vertical-align : baseline;
}

@media screen and (max-width : 400px) {
    .station-acess-img:not(:last-child) {
        margin-right : auto;
    }

    .station-acess-img {
        margin : 0 auto;
    }
}

.fixed-bnr {
    position : fixed;
    bottom   : 20%;
    right    : 2%;
    z-index  : 10;
}

.fixed-bnr a {
    display : block;
}

.fixed-bnr a:first-child {
    margin-bottom : 10px;
}

.table-type01 tr th:nth-child(4) {
    border : 1px solid #333;
    width  : 100px;
}

.table-type01 tr th:nth-child(5) {
    border : 1px solid #333;
    width  : 100px;
}

.table-type01 tr td:nth-child(4) {
    border     : 1px solid #333;
    width      : 100px;
    text-align : center;

}

.table-type01 tr td:nth-child(5) {
    text-align : center;
    border     : 1px solid #333;
    width      : 100px;
}

.table-type05 {
    width      : 100%;
    text-align : left;
    border     : 1px solid #d8d8d8;
}

.table-type05 tr {
    border-bottom : 1px solid #d8d8d8;
}

.table-type05 tr:nth-of-type(even) {
    background : #eee;
}

.table-type05 th, .table-type05 td:first-child {
    width          : 180px;
    padding        : 10px;
    vertical-align : middle;
    text-align     : left;
    font-weight    : bold;
}

.table-type05 th, .table-type05 td {
    padding        : 10px;
    vertical-align : middle;
    text-align     : left;
    font-weight    : bold;
}

.table-type05 th {
    font-weight : bold;
    width       : auto;
    box-sizing  : border-box;
    white-space : nowrap;
    text-align  : center;
}

.table-type05 th:last-child {
    width : 200px;
}

.table-type05 tr th:nth-child(7) {
    width  : 100px;
    border : 1px solid #333;
}

.table-type05 tr th:nth-child(8) {
    width  : 100px;
    border : 1px solid #333;
}

.table-type05 tr td:nth-child(7) {
    width      : 100px;
    border     : 1px solid #333;
    text-align : center;
}

.table-type05 tr td:nth-child(8) {
    width      : 100px;
    border     : 1px solid #333;
    text-align : center;
}

.table-type06 {
    width      : 100%;
    text-align : center;
    border     : 1px solid #d8d8d8;
}

.table-type06 tr {
    border-bottom : 1px solid #d8d8d8;
}

.table-type06 tr:nth-of-type(even) {
    background : #eee;
}

.table-type06 th, .table-type06 td {
    padding        : 10px;
    vertical-align : middle;
    font-weight    : bold;
}

.table-type06 th {
    font-weight : bold;
    width       : auto;
    box-sizing  : border-box;
    white-space : nowrap;
    text-align  : center;
}

.table-type06 th:last-child {
    width : 200px;
}

.table-type06 tr th:nth-child(4) {
    width  : 100px;
    border : 1px solid #333;
}

.table-type06 tr th:nth-child(5) {
    width  : 100px;
    border : 1px solid #333;
}

.table-type06 tr td:nth-child(4) {
    border : 1px solid #333;
    width  : 100px;
}

.table-type06 tr td:nth-child(5) {
    border : 1px solid #333;
    width  : 100px;
}

.table-type07 {
    width      : 100%;
    text-align : center;
    border     : 1px solid #d8d8d8;
}

.table-type07 tr {
    border-bottom : 1px solid #d8d8d8;
}

.table-type07 tr:nth-of-type(even) {
    background : #eee;
}

.table-type07 th, .table-type07 td {
    padding        : 10px;
    vertical-align : middle;
    text-align     : center;
    font-weight    : bold;
}

.table-type07 th {
    font-weight : bold;
    width       : auto;
    box-sizing  : border-box;
    white-space : nowrap;
    text-align  : center;
}

.table-type07 th:last-child {
    width : 200px;
}

.table-type07 tr th:nth-child(3) {
    border : 1px solid #333;
    width  : 100px;
}

.table-type07 tr th:nth-child(4) {
    border : 1px solid #333;
    width  : 100px;
}

.table-type07 tr td:nth-child(3) {
    width  : 100px;
    border : 1px solid #333;
}

.table-type07 tr td:nth-child(4) {
    width  : 100px;
    border : 1px solid #333;
}

.table-type08 {
    width      : 100%;
    text-align : center;
    border     : 1px solid #d8d8d8;
}

.table-type08 tr {
    border-bottom : 1px solid #d8d8d8;
}

.table-type08 tr:nth-of-type(even) {
    background : #eee;
}

.table-type08 th, .table-type08 td {
    padding        : 10px;
    vertical-align : middle;
    font-weight    : bold;
}

.table-type08 th {
    font-weight : bold;
    width       : auto;
    box-sizing  : border-box;
    white-space : nowrap;
    text-align  : center;
}

.table-type08 th:last-child {
    width : 200px;
}

.table-type08 tr th:nth-child(4) {
    border : 1px solid #333;
    width  : 100px;
}

.table-type08 tr th:nth-child(5) {
    border : 1px solid #333;
    width  : 100px;
}

.table-type08 tr td:nth-child(4) {
    border : 1px solid #333;
    width  : 100px;
}

.table-type08 tr td:nth-child(5) {
    border : 1px solid #333;
    width  : 100px;
}

.sale-messageblock {
    margin-bottom : 20px;
}

.top-bnr-link-area {
    display         : flex;
    flex-wrap       : wrap;
    justify-content : center;
}

.top-bnr-link-img {
    border : 1px solid #3e3e3e;
}

section.anchor {
    display : block;
    /* padding-top: 100px;
  margin-top: -100px; */
}

.far, .fas {
    margin-right : 5px;
}

.contact-page-tel {
    text-align : center;
}

.contact-page-tel h2 {
    color     : #e10126;
    font-size : 4rem;
}

.contact-page-tel p {
    color     : #e10126;
    font-size : 3.5rem;
}


@media (max-width : 768px) {
    .column-type02 {
        justify-content : center;
    }
}

.td-bg-red {
    background : #e10126;
    color      : #fff;
}

@media only screen and (max-width : 500px) {
    #ipad .col {
        position       : relative;
        padding-bottom : 52px;
    }

    #ipad .col .taC:last-child {
        position : absolute;
        width    : 100%;
        left     : 0;
        bottom   : 10px;
        z-index  : 9
    }
}

/*---------------------------
宅配買取 & 初めての方 & 店頭買取 追加css
---------------------------*/
.flow_flex {
    display         : flex;
    justify-content : space-between;
}

.flow_item {
    width    : 18%;
    position : relative;
}

.flow_item:not(:last-child):after {
    position    : absolute;
    top         : 25%;
    right       : -15px;
    content     : '\f35a';
    font-family : 'Font Awesome 5 Free';
    font-weight : 400;
    color       : #e10126;
    font-size   : 1.8rem;
}

.contact_flow_flex {
    display         : flex;
    justify-content : space-between;
}

.contact_flow_item {
    width : 45%;
}

.contact_flow_item {
    padding    : .5rem 0;
    text-align : center;
    background : #e10126;
    display    : table;
    color      : #fff;
}

.contact_flow_item a {
    font-size      : 2.4rem;
    color          : #fff;
    display        : table-cell;
    vertical-align : middle;
}

.section-contents {
    margin-bottom : 50px;
}

.fwB {
    font-weight : bold;
}

.font_large {
    font-size : 2rem;
}

.btn {
    width          : 30%;
    padding        : .5rem 0;
    text-align     : center;
    background     : #e10126;
    color          : #fff;
    display        : inline-block;
    font-size      : 2rem;
    color          : #fff;
    vertical-align : middle;
}

.taC {
    text-align : center;
}

.txt_box01 {
    padding    : 0.5em 1em;
    margin     : .5em 0;
    background : #f0f7ff;
    border     : dashed 2px #5b8bd0; /*点線*/
}

.caution_txt {
    text-align  : center;
    font-size   : 2rem;
    font-weight : bold;
    color       : #e10126;
}

.color_red {
    color : #e10126;
}

.media_item {
    margin-bottom : 20px;
}

.flow_flex2 {
    display         : flex;
    justify-content : space-between;
}

.flow_item2 {
    width    : 23%;
    position : relative;
}

.flow_item2:not(:last-child):after {
    position    : absolute;
    top         : 35%;
    right       : -25px;
    content     : '\f35a';
    font-family : 'Font Awesome 5 Free';
    font-weight : 400;
    color       : #e10126;
    font-size   : 1.8rem;
}

.flow_item2 h3 {
    border-bottom  : 2px solid #e10126;
    font-size      : 1.6rem;
    padding-bottom : .2rem;
    margin-bottom  : 1rem;
}

.title_type01 {
    font-size  : 1.6rem;
    padding    : 1rem 2rem;
    color      : #fff;
    background : #e10126;
    box-shadow : 5px 5px 0 #ffc0ca;
}

.qa-list dl {
    position      : relative;
    margin        : 0;
    padding       : 28px 80px 28px 30px;
    cursor        : pointer;
    border-bottom : 1px solid #000;
}

.qa-list dl:first-child {
    border-top : 1px solid #000;
}

.qa-list dl::before {
    position     : absolute;
    top          : 35px;
    right        : 35px;
    display      : block;
    width        : 7px;
    height       : 7px;
    margin       : auto;
    content      : '';
    transform    : rotate(135deg);
    border-top   : 2px solid #000;
    border-right : 2px solid #000;
}

.qa-list .open::before {
    transform : rotate(-45deg);
}

.qa-list dl dt {
    position    : relative;
    margin      : 0;
    padding     : 0 0 0 50px;
    font-weight : bold;
    font-size   : 20px;
}

.qa-list dl dt::before {
    font-size   : 22px;
    line-height : 1;
    position    : absolute;
    top         : 3px;
    left        : 0;
    display     : block;
    content     : 'Q.';
    color       : #3285bf;
}

.qa-list dl dd::before {
    font-size   : 22px;
    line-height : 1;
    position    : absolute;
    top         : 3px;
    left        : 2px;
    display     : block;
    content     : 'A.';
    font-weight : bold;
    color       : #e10126;
}

.qa-list dl dd {
    position : relative;
    display  : none;
    height   : auto;
    margin   : 20px 0 0;
    padding  : 0 0 0 50px;
}

.qa-list dl dd p {
    margin : 30px 0 0;
}

.qa-list dl dd p:first-child {
    margin-top : 0;
}

@media screen and (max-width : 767px) {
    .qa-list dl {
        position : relative;
        padding  : 15px 40px 15px 10px;
    }

    .qa-list dl::before {
        top    : 20px;
        right  : 20px;
        width  : 7px;
        height : 7px;
    }

    .qa-list dl dt {
        padding   : 0 0 0 30px;
        font-size : 14px;
    }

    .qa-list dl dt::before {
        font-size : 14px;
        top       : 3px;
        left      : 5px;
        content   : 'Q.';
    }

    .qa-list dl dd::before {
        font-size : 14px;
        top       : 5px;
        left      : 5px;
        content   : 'A.';
    }

    .qa-list dl dd {
        margin    : 10px 0 0;
        padding   : 0 0 0 30px;
        font-size : 14px;
    }

    .qa-list dl dd p {
        margin : 30px 0 0;
    }

    .qa-list dl dd p:first-child {
        margin-top : 0;
    }
}

@media (max-width : 768px) {
    .flow_flex,
    .flow_flex2,
    .contact_flow_flex {
        flex-direction : column;
    }

    .flow_item,
    .flow_item2,
    .contact_flow_item {
        width : 100%;
    }

    .flow_item:not(:last-child):after,
    .flow_item2:not(:last-child):after {
        display : none;
    }

    .btn {
        width : 100%;
    }

    .contact_flow_item:nth-child(1) {
        margin-bottom : 20px;
    }
}

.txt1 {
    font-size     : 3rem;
    border-bottom : 2px solid #e10126;
    margin-bottom : 20px;
}

.txt2 {
    font-size     : 2.4rem;
    margin-bottom : 20px;
}

@media (max-width : 768px) {
    .txt1 {
        font-size : 2rem;
    }

    .txt2 {
        font-size : 1.8rem;
    }
}