@charset "utf-8"; /* CSS Document */
/*--------------------------------------
　Main Index
---------------------------------------*/
/*------------
index_PC
------------*/
body {
    position: relative;
}

body::before {
}

.forTab {
    position: relative;
    z-index: 1;
}

.index {
}

/*--------------------------------------
　Header_PC
---------------------------------------*/
#header {
}

.mokuji #toc br {
    display: block;
}

/* mokuji_PC */
.mokuji {
    position: absolute;
    z-index: 16;
    top: 61vh;
    width: 32rem;
    background: rgba(25,31,31,.6);
    height: 25rem;
}

.mokuji::before {
    content: "";
    position: absolute;
    top: -20px;
    left: 0;
    width: 100%;
    height: 20px;
    background: url(./img/eng_pick.svg) 100% 0 no-repeat;
    background-size: auto 12px;
    border-bottom: 1px solid #949494;
}

.mokuji #toc {
    position: relative;
    padding: 10px 10px 20px 10px;
    overflow: hidden;
}

.mokuji #toc::-webkit-scrollbar {
    height: 0;
}

.mokuji ul {
    margin: 0;
    padding: 0;
}

.mokuji ul li {
    margin: 1rem 0;
    padding: 0 0 1px 2.5rem;
    text-align: left;
    line-height: 1.5;
}

.mokuji ul li::before {
    width: 0;
    height: 0;
    background: none;
    border: none;
}

.mokuji #toc > ul > li {
    position: relative;
    counter-increment: count;
}

.mokuji #toc > ul > li::after {
    content: "0"counter(count);
    position: absolute;
    /* top: 13px; */
    left: 0;
    transform: translate(0,-50%);
    font-family: 'Noto Serif JP', serif, "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "Times New Roman", serif;
    font-weight: 500;
    font-size: 1.3rem;
    letter-spacing: 0.1em;
    color: #e1b17d;
}

.mokuji #toc ul ul li {
    padding: 0 0 0 2rem;
}

.mokuji li a {
    padding: 0;
    width: 0;
    background: none;
    font-weight: 400;
    text-decoration: none;
    font-size: 1.5rem;
    letter-spacing: 0;
}

.mokuji li a:last-child {
    padding: 5px 5px 5px 0;
}

.mokuji #toc br {
    display: none;
}




/*------------
contents_PC
------------*/
#contents {
    overflow-x: hidden;
    padding: 0 0 50px;
}

#contents::before {
    width: 0;
    height: 0;
    background: none;
    border: none;
}

/*------------
mainVis_PC
------------*/
#mainVis {
    position: relative;
    z-index: 1;
    height: 1000px;
    margin: 0 0 -1px;
}

#mainVis #slider_idx_mv {
    position: absolute;
    z-index: -1;
    top: 0;
    width: 100vw;
    height: 100%;
    opacity: 0.4;
}

#mainVis .areaInner {
    padding: 530px 0 0;
}

#mainVis p {
    width: 450px;
    margin: 0 0 50px 660px;
    text-shadow: 2px 2px 20px #000000;
}

#mainVis .btn-link a {
    background: url("./img/arrow_ccl_down.svg") 40px calc(100% - 20px) no-repeat;
    background-size: 26px auto;
}

.fixBan3 {
    position: fixed;
    z-index: 102;
    bottom: 100px;
    right: 0;
    width: 260px;
    /*transition: .3s;*/
    /*デフォルトで非表示にする*/
    opacity: 0;
    visibility: hidden;
}

/*このクラスが付与されると表示する*/
.fixBan3.active {
    opacity: 1;
    visibility: visible;
}

/*このクラスが付与されると停止する*/
.fixBan3.absolute {
    position: absolute;
    bottom: 0;
}

/*------------
indexSect_PC
------------*/
.indexSect {
    position: relative;
    z-index: 2;
}

.typeA::before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    width: 50vw;
    height: 1px;
    background: #7f6447;
}

.typeB::before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 50vw;
    height: 1px;
    background: #7f6447;
}

.indexSect .areaInner {
    padding: 60px 0 90px;
}

.typeA .areaInner::before {
    content: "";
    position: absolute;
    top: -10px;
    left: 0;
}

.typeA .areaInner::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    height: 1px;
    background: #7f6447;
}

.typeB .areaInner::before {
    content: "";
    position: absolute;
    top: -10px;
    right: 0;
}

.typeB .areaInner::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 1px;
    background: #7f6447;
}

.indexSect .headArea h2 {
    margin: 0 0 50px;
    font-size: 3.6rem;
    line-height: 1.6;
}

.typeB .headArea h2 {
    text-align: right;
}

.indexSect .headArea h2 a {
    padding: 0 0 50px;
    background: url(./img/arrow_ccl.svg) 3px 100% no-repeat;
    background-size: 32px auto;
    line-height: 1.6;
}

.typeB .headArea h2 a {
    background: url(./img/arrow_ccl.svg) calc(100% - 5px) 100% no-repeat;
    background-size: 32px auto;
}

.indexSect .intro {
    padding: 0 50px 30px;
}

.indexSect .ulBox, .indexSect .liBox {
    position: relative;
}

.indexSect .box2, .indexSect .box3, .indexSect .box4 {
    display: flex;
    flex-wrap: wrap;
}

.indexSect .box2 .liBox {
    width: calc((100% - 100px) / 2);
    margin: 0 100px 0 0;
}

.indexSect .box2 .liBox:nth-child(2n) {
    margin: 0 0 0 0;
}

.indexSect .box3 .liBox {
    width: calc((100% - 70px) / 3);
    margin: 0 35px 35px 0;
}

.indexSect .box3 .liBox:nth-child(3n) {
    margin: 0 0 35px 0;
}

.indexSect .box4 .liBox {
    width: calc((100% - 60px) / 4);
    margin: 0 20px 20px 0;
}

.indexSect .box4 .liBox:nth-child(4n) {
    margin: 0 0 20px 0;
}

/*--------------------------------------
　mokuji_PC
---------------------------------------*/
/*------------
sect01_PC
------------*/
#sect01 {
}

#sect01::after {
    content: "";
    position: absolute;
    z-index: -1;
    bottom: -400px;
    left: 0;
    width: 733px;
    height: 1000px;
    background: url("./img/yuge02.png") 0 0 no-repeat;
}

#sect01 .areaInner::before {
    width: 125px;
    height: 19px;
    background: url("./img/eng_gal.svg") 0 0 no-repeat;
    background-size: auto 19px;
}

#sect01 .areaInner::after {
    width: calc(100% - 135px);
}

#sect01 .liBox a:hover, #sect01 .liBox a:hover img {
    opacity: 1;
}

#sect01 .liBox .flame {
    position: relative;
    display: flex;
    align-items: center;
    height: 340px;
    background: #232f30;
}

#sect01 .liBox .flame::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(./img/sct01_hover.png) 100% 95% no-repeat rgba(22,28,28,.9);
    opacity: 0;
    transition: all .2s ease-in-out;
}

#sect01 .liBox a:hover .flame::before {
    opacity: 1;
}

#sect01 .liBox a .flame p {
    position: absolute;
    opacity: 0;
    font-size: 2rem;
    top: 15rem;
    left: 0;
    right: 0;
    margin: auto;
    width: 90%;
    text-align: center;
    line-height: 1.5;
}

#sect01 .liBox a:hover .flame p {
    opacity: 1;
}

#sect01 .liBox img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

#sect01 .liBox .caption {
    text-align: left;
}

/* remodal_custom */
.remodal-overlay {
    background: rgba(3,5,5,.8);
}

.remodal-wrapper {
    overflow-x: hidden;
}

.remodal {
    max-width: 900px;
    padding: 0;
    background: none;
    color: #fff;
}

.remodal-close {
    position: absolute;
    z-index: 10;
    top: -5px;
    left: auto;
    right: 0;
    width: 50px;
    height: 50px;
    background: url(./img/sp-btn-menu_off.png) 0 0 no-repeat;
    background-size: 100% auto;
}

.remodal-close:before {
    content: "";
    width: 0;
    height: 0;
    background: none;
    border: none;
}

.remodal h3 {
    margin: 0 0 20px;
    padding: 0 80px 0 0;
    font-size: 2.4rem;
    text-align: left;
}

.remodal .flame {
    margin: 0 0 10px;
}

.remodal .caption {
    margin: 0 0 20px;
    font-size: 1rem;
    font-family: auto;
}

.remodal p {
    width: 640px;
    float: left;
    text-align: left;
    font-size: 1.8rem;
}

.remodal .btn-link {
    width: 244px;
    float: right;
    margin: -15px 0 0!important;
    text-align: left;
}

.remodal .btn-link a {
    background: url("./img/arrow_ccl_down.svg") 40px calc(100% - 20px) no-repeat;
    background-size: 26px auto;
}

.remodal div {
    margin: 0 0 20px;
    padding: 0 80px 0 0;
    font-size: 2rem;
    text-align: center;
    position: relative;
    font-family: 'Noto Serif JP', serif, "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "Times New Roman", serif;
    font-weight: 500;
    padding: 0;
    line-height: 1.5;
    letter-spacing: .1em;
}

/*------------
sect02_PC
------------*/
#sect02 {
    padding: 0 0 110px;
}

#sect02::after {
    content: "";
    position: absolute;
    z-index: -1;
    bottom: -350px;
    right: 0;
    width: 733px;
    height: 1000px;
    background: url("./img/yuge01.png") 0 0 no-repeat;
}

#sect02 .areaInner {
    padding: 60px 0 80px;
}

#sect02 .areaInner::before {
    width: 70px;
    height: 19px;
    background: url("./img/eng_type.svg") 0 0 no-repeat;
    background-size: auto 19px;
}

#sect02 .areaInner::after {
    width: calc(100% - 80px);
}

#sect02 .headArea .catch {
    margin: 0 0 30px;
    font-size: 2.4rem;
    text-align: right;
}

#sect02 .headArea p {
    position: relative;
    z-index: 1;
    margin: 25px 0 25px 660px;
}

#sect02 .headArea .flame {
    margin: -360px 0 0 10px;
}

#sect02 .tabArea {
    padding: 100px 0;
    background: rgb(0,0,0);
    background: linear-gradient(90deg, rgba(0,0,0,0) 5%, rgba(0,0,0,1) 20%, rgba(0,0,0,1) 80%, rgba(0,0,0,0) 95%);
}

#sect02 .tabArea .inner {
    width: 1100px;
    margin: 0 auto;
}

#sect02 .tab {
    display: none;
}

#sect02 .content .hide {
    /*display: none;*/
}

#sect02 .tabArea .content {
    display: flex;
    flex-wrap: wrap;
}

#sect02 .tabArea .tabCnt {
    width: calc((100% - 70px) / 3);
    margin: 0 35px 0 0;
}

#sect02 .tabArea .tabCnt:nth-child(3n) {
    margin: 0 0 0;
}

#sect02 .tabCnt .boxHead {
    position: relative;
    padding: 18px 15px 40px;
    background: rgb(72,0,0);
    background: linear-gradient(90deg, rgba(72,0,0,0.8) 0%, rgba(114,0,0,0.8) 100%);
    box-shadow: rgba(255, 255, 255, 0.2) 0px -2px 15px;
}

#sect02 .tabCnt:nth-child(2) .boxHead {
    background: rgb(0,45,90);
    background: linear-gradient(90deg, rgba(0,45,90,0.8) 0%, rgba(0,61,121,0.8) 100%);
}

#sect02 .tabCnt:nth-child(3) .boxHead {
    background: rgb(48,38,27);
    background: linear-gradient(90deg, rgba(48,38,27,0.8) 0%, rgba(79,62,44,0.8) 100%);
}

#sect02 .tabCnt .boxHead::before {
    content: "";
    position: absolute;
    bottom: 24px;
    left: 15px;
    width: 100%;
    height: 11px;
    background: url(./img/eng_301.svg) 0 0 no-repeat;
    background-size: auto 11px;
}

#sect02 .tabCnt:nth-child(2) .boxHead::before {
    background: url(./img/eng_302.svg) 0 0 no-repeat;
    background-size: auto 11px;
}

#sect02 .tabCnt:nth-child(3) .boxHead::before {
    background: url(/wp/wp-content/uploads/Traditional.png) 0 0 no-repeat;
    background-size: auto 11px;
}

#sect02 .tabCnt .headCatch {
    font-size: 2.3rem;
    /* font-weight: 700; */
    font-feature-settings: "palt" 1;
    letter-spacing: .1em;
    border-bottom: 1px solid #fff;
    line-height: 1.3;
    padding-bottom: 1rem;
}

#sect02 .tabCnt h3 {
    font-size: 2rem;
    letter-spacing: 0;
    padding: 1rem 0 0;
}

#sect02 .tabCnt .flame {
    margin: -8px 0 25px;
}

#sect02 .tabCnt ul {
    margin: 0;
    padding: 15px 0 0;
}

#sect02 .tabCnt ul li {
    padding: 0 0 4px 1em;
    line-height: 1.8;
    letter-spacing: 0;
}

#sect02 .tabCnt ul li::before {
    position: absolute;
    content: "";
    background: #fff;
    border-radius: 50%;
    width: 3px;
    height: 3px;
    top: 12px;
    left: 6px;
}

#sect02 .tabCnt h4 {
    letter-spacing: 0;
}

#sect02 .tabCnt .meritBox {
    margin: 0 0 20px;
}

#sect02 .tabCnt .meritBox h4 {
    padding: 0 0 12px;
    border-bottom: 1px solid #949494;
    font-size: 1.9rem;
    letter-spacing: 0;
}

#sect02 .tabCnt .recBox {
    margin: 25px 0 30px;
    padding: 10px 20px 15px;
    background: rgba(114,0,0,.5);
}

#sect02 .tabCnt:nth-child(2) .recBox {
    background: rgba(0,61,121,.5);
}

#sect02 .tabCnt:nth-child(3) .recBox {
    background: rgba(79,62,44,.5);
}

#sect02 .tabCnt .recBox h4 {
    position: relative;
    padding: 0 0 12px;
    border-bottom: 1px solid #949494;
    font-size: 1.6rem;
    letter-spacing: 0;
}

#sect02 .tabCnt .recBox h4::before {
    content: "";
    position: absolute;
    bottom: -1px;
    right: -20px;
    width: 20px;
    height: 1px;
    background: #949494;
}

#sect02 .tabCnt .ptBox {
}

#sect02 .ptBox h4 {
    padding: 0 0 12px;
    border-bottom: 1px solid #949494;
    font-size: 1.6rem;
    letter-spacing: 0;
    color: #e1b17d;
}

#sect02 .ptBox h4 .fontL {
    display: block;
    font-size: 1.9rem;
}

#sect02 .ptBox p {
    margin: 10px 0;
    letter-spacing: 0;
}

#sect02 .btn-link {
    margin: 20px auto 0!important;
}

#sect02 .btn-link a {
    background: url("./img/arrow_ccl_down.svg") 40px calc(100% - 20px) no-repeat;
    background-size: 26px auto;
}

#sect02 .btn-link a::after {
    width: calc(100% - 40px);
    height: 1px;
    background: #fff;
}

#sect02 .tabCnt:nth-child(3) .btn-link {
    /* bottom: -30px; */
}

/*------------
sect03_PC
------------*/
#sect03 {
}

#sect03 .areaInner {
    padding: 60px 0 50px;
}

#sect03 .areaInner::before {
    width: 120px;
    height: 19px;
    background: url("./img/eng_by.svg") 0 0 no-repeat;
    background-size: auto 19px;
}

#sect03 .areaInner::after {
    width: calc(100% - 130px);
}

#sect03 h2 .fontK {
    position: relative;
    left: -14px;
}

.sect03Box {
    position: relative;
    margin: 0 0 200px;
}

.sect03Box::after {
    content: "";
    position: absolute;
    z-index: -1;
    top: 40%;
    left: 0;
    width: 733px;
    height: 1000px;
    background: url("./img/yuge02.png") 0 0 no-repeat;
    z-index: -1;
}

.sect03Box .inner {
    width: 1100px;
    margin: 0 auto;
}

.sect03Box .boxHead {
    position: relative;
    margin: 0 0 30px;
    padding: 15px 25px 10px 40px;
    border-left: 1px solid #7f6447;
}

.sect03Box .boxHead::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100%;
    background: rgb(72,0,0);
    background: linear-gradient(90deg, rgba(72,0,0,0.6) 0%, rgba(114,0,0,0.6) 43%);
    border: 1px solid rgba(232,232,232,.1);
    box-shadow: rgba(255, 255, 255, .1) 0px -2px 15px;
}

#sect302 .boxHead::before {
    background: linear-gradient(90deg, rgba(0,45,90,0.6) 0%, rgba(0,61,121,0.6) 43%);
}

#sect303 .boxHead::before {
    background: linear-gradient(90deg, rgba(48,38,27,0.6) 0%, rgba(79,62,44,0.6) 43%);
}

.sect03Box .boxHead::after {
    content: "";
    position: absolute;
    bottom: 40px;
    right: 0;
    width: 100%;
    height: 11px;
    background: url(./img/eng_301.svg) calc(100% - 25px) 0 no-repeat;
    background-size: auto 11px;
}

#sect302 .boxHead::after {
    background: url(./img/eng_302.svg) calc(100% - 25px) 0 no-repeat;
    background-size: auto 11px;
}

#sect303 .boxHead::after {
    background: url(/wp/wp-content/uploads/Traditional.png) calc(100% - 25px) 0 no-repeat;
    background-size: auto 11px;
}

.sect03Box .boxHead .catch {
    margin: 0 0 0;
    font-size: 3.1rem;
    border-bottom: 1px solid #fff;
    padding: 2rem 0 1rem;
}

.sect03Box h3 {
    font-size: 3rem;
}

.sect03Box .boxHead .sttl {
    margin: 0;
    font-size: 1.6rem;
    text-align: right;
}

.sect03Box .introBox {
    position: relative;
    margin: 0 0 90px;
    padding: 35px 50px 30px;
}

.sect03Box .introBox::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100%;
    background: url(./img/bg_h2.png) 0 0 repeat;
}

.sect03Box .introBox::after {
    content: "";
    position: absolute;
    top: -10px;
    left: -10px;
    width: 100vw;
    height: 100%;
    background: rgba(255,255,255,.1);
    z-index: -1;
}

.sect03Box .introBox h4 {
    display: inline-block;
    padding: 0 0 15px;
    border-bottom: 1px solid #949494;
    font-size: 2.8rem;
}

.sect03Box .introBox h4::before {
    content: "";
    position: absolute;
    bottom: -1px;
    left: -100vw;
    width: 100vw;
    height: 1px;
    background: #949494;
}

/* fixBan3 */
.sect03Box .fixBan3 {
    min-height: 290px;
    background: rgba(114,0,0,.7);
}

#sect302 .fixBan3 {
    background: rgba(0,61,121,.7);
}

#sect303 .fixBan3 {
    background: rgba(79,62,44,.8);
}

.sect03Box .fixBan3 .mainArea {
    padding: 18px 14px 10px;
}

.sect03Box .fixBan3 .sttl {
    margin: 0 0 20px;
    font-size: 1.3rem;
    letter-spacing: 0;
    color: #e1b17d;
}

.sect03Box .fixBan3 .catch {
    font-size: 1.5rem;
    border-bottom: 1px solid #fff;
    padding-bottom: 0.5rem;
}

.sect03Box .fixBan3 .boxTtl {
    margin: 20px 0 0;
    font-size: 2.6rem;
    line-height: 1.5;
}

.sect03Box .fixBan3 a {
    margin: 0 0 0 20px;
    padding: 15px 20px 38px;
    background: url(./img/arrow_ccl.svg) calc(100% - 20px) calc(100% - 10px) no-repeat;
    background-size: 20px auto;
    border: 1px solid #949494;
    border-right: none;
    font-size: 1.3rem;
    font-weight: 700;
    text-align: right;
    line-height: 1.4;
}

.sect03Box .fixBan3 a:hover {
    background: rgb(0 0 0 / 0.5) url(./img/arrow_ccl.svg) calc(100% - 20px) calc(100% - 10px) no-repeat;
    background-size: 20px auto;
}

.sect03Box .mini {
    margin: 0 0 80px;
}

.sect03Box .mini h4 {
    display: inline-block;
    margin: 0 0 10px;
    padding: 0 0 10px;
    border-bottom: 1px solid #949494;
    font-size: 2.4rem;
}

.sect03Box .mini h4::before {
    content: "";
    position: absolute;
    bottom: -1px;
    left: -100vw;
    width: 100vw;
    height: 1px;
    background: #949494;
}

/* mini01 */
.sect03Box .mini01 .ulBox {
    padding: 40px 50px 0;
}

.sect03Box .mini01 .boxTtl {
    position: relative;
    padding: 0 0 10px;
    border-bottom: 1px solid #949494;
    font-size: 1.8rem;
    font-weight: 700;
    font-feature-settings: "palt" 1;
    letter-spacing: .1em;
}

.sect03Box .mini01 .boxTtl::before {
    content: "";
    position: absolute;
    top: 8px;
    left: -32px;
    width: 23px;
    height: 18px;
    background: url(./img/ico_ck.svg) 0 0 no-repeat;
    transform: scale(-1,1);
}

/* mini02 */
.sect03Box .mini02 p {
    margin: 25px 0 0;
    padding: 0 50px;
}

/* mini03 */
.sect03Box .mini03 {
    margin: 0 0 40px;
}

.sect03Box .mini03 .ulBox {
    padding: 40px 50px 0;
}

.sect03Box .mini03 .liBox {
    margin: 0 0 50px;
}

.sect03Box .mini03 .liBox:last-child {
    margin: 0 0 0;
}

.sect03Box .mini03 .boxTtl {
    position: relative;
    padding: 0 0 10px;
    font-size: 1.8rem;
    font-weight: 700;
    font-feature-settings: "palt" 1;
    letter-spacing: .1em;
}

.sect03Box .mini03 .imgArea {
    width: 330px;
    float: left;
}

.sect03Box .mini03 .caption {
    text-align: left;
}

.sect03Box .mini03 table {
    width: 606px;
    float: right;
    margin: 0;
}

.sect03Box .mini03 th {
    width: 22%;
    padding: 10px 20px;
    line-height: 1.6;
    text-align: left;
}

.sect03Box .mini03 td {
    padding: 10px 20px;
}

.sect03Box .btn-web {
    margin: 0 auto 80px!important;
}

#sect302 .btn-web a, #sect302 .btn-web a::before {
    background-color: rgba(0,61,121,.5);
}

#sect303 .btn-web a, #sect303 .btn-web a::before {
    background-color: rgba(79,62,44,.5);
}

/* mini04 */
.sect03Box .mini04 table {
    margin: 40px 50px 0;
}

.sect03Box .mini04 th {
    width: 22%;
    padding: 10px 20px;
    line-height: 1.6;
    text-align: left;
}

.sect03Box .mini04 td {
    padding: 10px 20px;
}

/* mini04 */
.sect03Box .botArea {
    background: rgba(255,255,255,.1);
}

.sect03Box .botArea p {
    width: 1100px;
    margin: 0 auto;
    padding: 18px 50px;
    font-size: 1.1rem;
    letter-spacing: 0;
    color: #ccc;
}

.sect03Box .botArea .fontBold {
    display: block;
}

/* swiper */
.sect03Box .swiper-container {
}

.sect03Box .swiper-wrapper {
    padding: 50px 0 80px;
}

.sect03Box .swiper-slide {
}

.sect03Box .flame img {
    max-height: 70rem;
    width: auto;
    margin: 0 auto;
    display: block;
}

.sect03Box .swiper-slide .caption {
    text-align: center;
}

.sect03Box .swiper-pagination {
    bottom: 40px;
}

.sect03Box .swiper-pagination-bullet {
    margin: 0 10px!important;
    opacity: 0.5;
    background: #fff;
}

.sect03Box .swiper-pagination-bullet-active {
    opacity: 1;
    background: #fff;
    width: 1.5rem;
    height: 1.5rem;
    margin-bottom: -0.4rem !important;
}

.sect03Box .swp-next, .sect03Box .swp-prev {
    top: 0;
    width: 40px;
    height: 100%;
    position: absolute;
    z-index: 1;
    cursor: pointer;
}

.sect03Box .swp-next {
    background: url(./img/arrow_ccl.svg) 0% 40% no-repeat;
    background-size: 40px auto;
    left: calc(50% + 435px);
}

.sect03Box .swp-prev {
    background: url("./img/arrow_ccl_rv.svg") 0% 40% no-repeat;
    background-size: 40px auto;
    left: calc(50% - 435px - 40px);
}

/*------------
sect04_PC
------------*/
#sect04::after {
    z-index: -1;
    content: "";
    position: absolute;
    top: 90px;
    left: calc(50vw - 690px);
    width: 100vw;
    height: calc(100% - 90px);
    background: rgba(89,89,89,.2);
}

#sect04 .decoInner {
    position: relative;
}

#sect04 .decoInner::after {
    content: "";
    position: absolute;
    z-index: -1;
    top: 100px;
    right: 0;
    width: 733px;
    height: 1000px;
    background: url("./img/yuge01.png") 0 0 no-repeat;
}

#sect04 .areaInner {
    padding: 60px 0 100px;
}

#sect04 .areaInner::before {
    width: 60px;
    height: 19px;
    background: url("./img/eng_list.svg") 0 0 no-repeat;
    background-size: auto 19px;
}

#sect04 .areaInner::after {
    width: calc(100% - 70px);
}

#sect04 .headArea p {
    margin: 0 0 40px;
}

#sect04 .liBox {
    padding: 0 0 30px;
    border: 1px solid #949494;
}

#sect04 .liBox h3 {
    margin: 0 0 25px;
    border-bottom: 1px solid #949494;
}

#sect04 .liBox a {
    display: flex;
    align-items: center;
    padding: 24px 60px 24px 30px;
    background: url(./img/arrow_ccl.svg) calc(100% - 18px) 50% no-repeat rgba(46,41,36,1.00);
    background-size: 26px auto;
    font-size: 2.2rem;
}

#sect04 .liBox p {
    padding: 0 30px;
    letter-spacing: 0;
}

#sect04 .liBox table {
    margin: 20px 30px 0;
    width: calc(100% - 60px);
}

#sect04 .liBox th {
    width: auto;
    padding: 12px 10px;
    font-size: 1.3rem;
    text-align: left;
}

#sect04 .liBox td {
    width: 19rem;
    padding: 12px 10px;
    font-size: 1.3rem;
}

#sect04 .moreBtn a {
    cursor: pointer;
    background: url(./img/plus.svg) 40px calc(100% - 20px) no-repeat;
    background-size: 26px auto;
}

#sect04 .moreBtn a.boxclose {
    background: url(./img/minus.svg) 40px calc(100% - 20px) no-repeat;
    background-size: 26px auto;
}

/*------------
sect05_PC
------------*/
#sect05 {
    margin: 0 0 160px;
    padding: 130px 0 0;
}

#sect05::before {
    top: 130px;
    /* background: #fff; */
}

#sect05 .areaInner {
    padding: 60px 0 70px;
}

#sect05 .areaInner::before {
    width: 110px;
    height: 19px;
    background: url("./img/eng_spc.svg") 0 0 no-repeat;
    background-size: auto 19px;
}

#sect05 .areaInner::after {
    width: calc(100% - 125px);
    /* background: #fff; */
}

#sect05 .sttl {
    left: -20px;
    font-size: 3.6rem;
}

#sect05 h2 {
    font-size: 3.6rem;
    text-align: left;
    text-shadow: 2px 2px 20px #000000;
}

#sect05 h2 .fontL {
    display: block;
    font-size: 5.8rem;
}

#sect05 p {
    margin: 20px 0 50px 520px;
    text-shadow: 2px 2px 20px #000000;
}

#sect05 #slider_idx_sct5 {
    position: absolute;
    z-index: -1;
    top: 45rem;
    left: 0;
    width: 45vw;
    height: 45% !important;
}

/*------------
sect06_PC
------------*/
#sect06 {
}

#sect06::after {
    content: "";
    position: absolute;
    z-index: -1;
    top: -500px;
    left: 0;
    width: 733px;
    height: 1000px;
    background: url("./img/yuge02.png") 0 0 no-repeat;
}

#sect06 .areaInner::before {
    width: 315px;
    height: 19px;
    background: url("./img/eng_case.svg") 0 0 no-repeat;
    background-size: auto 19px;
}

#sect06 .areaInner::after {
    width: calc(100% - 330px);
}

#sect06 .headArea {
    position: relative;
    z-index: 1;
    margin: 0 0 -260px;
}

#sect06 .headArea p {
    margin: 0 0 0 660px;
}

#sect06 .liBox {
    width: 50%;
    margin: 0;
    padding: 70px 0 0;
}

#sect06 .liBox::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 50vw;
    height: 100%;
    background: url(./img/sct06_boxbg.jpg) 0 0 no-repeat;
    background-size: cover;
    opacity: 0.5;
}

#sect06 .liBox::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 50vw;
    height: 100%;
    background: url(./img/sct06_boxbg01.jpg) 0 0 no-repeat;
    background-size: cover;
}

#sect06 .ulBox.box2 .liBox.firstimg::before {
    background: url(./img/sct06_boxbg01.jpg) 0 0 no-repeat;
    background-size: cover;
}

#sect06 .liBox:nth-child(1)::before {
    background: url(./img/sct06_boxbg02.jpg) 0 0 no-repeat;
    background-size: cover;
}

#sect06 .liBox:nth-child(2)::before {
    background: url(./img/sct06_boxbg03.jpg) 0 0 no-repeat;
    background-size: cover;
}

#sect06 .liBox:nth-child(3)::before {
    background: url(./img/sct06_boxbg04.jpg) 0 0 no-repeat;
    background-size: cover;
}

#sect06 .liBox:nth-child(4)::before {
    background: url(./img/sct06_boxbg05.jpg) 0 0 no-repeat;
    background-size: cover;
}

#sect06 .liBox:nth-child(5)::before {
    background: url(./img/sct06_boxbg06.jpg) 0 0 no-repeat;
    background-size: cover;
}

#sect06 .liBox:nth-child(6)::before {
    background: url(./img/sct06_boxbg07.jpg) 0 0 no-repeat;
    background-size: cover;
}

#sect06 .liBox:nth-child(2n)::before {
    right: auto;
    left: 0;
}

#sect06 .liBox a {
    position: relative;
    z-index: 1;
    padding: 40px 60px 120px;
    background: url(./img/arrow_ccl.svg) calc(100% - 20px) calc(100% - 50px) no-repeat rgba(29,30,40,.8);
    background-size: 26px auto;
}

#sect06 .liBox h3 {
    display: flex;
    align-items: center;
    font-size: 2.7rem;
}

/*------------
sect07_PC
------------*/
#sect07 {
}

#sect07::after {
    content: "";
    position: absolute;
    z-index: -1;
    top: -140px;
    left: calc(50% - 160px);
    width: 1150px;
    height: 1190px;
    background: url("./img/sct07_bg.png") 0 -140px no-repeat;
}

#sect07 .areaInner::before {
    width: 280px;
    height: 19px;
    background: url("./img/eng_kn.svg") 0 0 no-repeat;
    background-size: auto 19px;
}

#sect07 .areaInner::after {
    width: calc(100% - 290px);
}

#sect07 .ulBox {
    padding: 20px 0 0;
}

#sect07 .liBox {
    margin: 0 0 60px;
    padding: 50px 50px 60px;
    background: rgba(79,62,44,.2);
}

#sect07 .liBox::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100vw;
    width: 100vw;
    height: 100%;
    background: rgba(79,62,44,.2);
}

#sect07 .liBox h3 a {
    position: relative;
    margin: 0 0 30px;
    padding: 0 50px 15px 0;
    background: url(./img/arrow_ccl.svg) 100% 50% no-repeat;
    background-size: 26px auto;
    border-bottom: 1px solid #949494;
    font-size: 2.7rem;
}

#sect07 .liBox h3 a::before {
    content: "";
    position: absolute;
    bottom: -1px;
    left: -100vw;
    width: 100vw;
    height: 1px;
    background: #949494;
}

/*------------
sect08_PC
------------*/
#sect08::before {
    content: "";
    position: absolute;
    top: -50px;
    left: 0;
    width: calc(50% - 100px);
    height: 1243px;
    background: url(./img/sct08_bg.jpg) 0 0 no-repeat;
    /* background-size: 100%; */
    background-attachment: fixed;
}

#sect08::after {
    content: "";
    position: absolute;
    z-index: -1;
    top: 200px;
    right: 0;
    width: 733px;
    height: 1000px;
    background: url("./img/yuge01.png") 0 0 no-repeat;
}

#sect08 .areaInner::before {
    width: 200px;
    height: 19px;
    background: url("./img/eng_trd.svg") 0 0 no-repeat;
    background-size: auto 19px;
}

#sect08 .areaInner::after {
    width: calc(100% - 210px);
}

#sect08 .headArea p {
    margin: 0 0 0 558px;
}

#sect08 .ulBox {
    padding: 20px 0 0 505px;
}

#sect08 .liBox {
    margin: 0 0 60px;
    padding: 50px 50px 60px;
    background: rgba(79,62,44,.2);
}

#sect08 .liBox::before {
    content: "";
    position: absolute;
    top: 0;
    right: -100vw;
    width: 100vw;
    height: 100%;
    background: rgba(79,62,44,.2);
}

#sect08 .liBox h3 a {
    position: relative;
    margin: 0 0 30px;
    padding: 0 50px 15px 0;
    background: url(./img/arrow_ccl.svg) 100% 50% no-repeat;
    background-size: 26px auto;
    border-bottom: 1px solid #949494;
    font-size: 2.7rem;
}

#sect08 .liBox h3 a::before {
    content: "";
    position: absolute;
    bottom: -1px;
    right: -100vw;
    width: 100vw;
    height: 1px;
    background: #949494;
}

/*  End_PC */
@media screen and (max-width: 480px) {
    /*--------------------------------------t
　Main Index
---------------------------------------*//*------------
index_SP
------------*/body {
    }

    #header {
    }

    .index {
        padding: 0 0 50px;
    }

    .catch {
        font-size: 1.8rem;
    }

    /*------------
Header_SP
------------*/
    #header {
    }

    /*------------
contents_SP
------------*/
    #contents {
        padding: 0 0 0;
    }

    #contents::after {
        width: 0;
        height: 0;
        background: none;
        border: none;
    }

    /*------------
mainVis_SP
------------*/
    #mainVis {
        position: relative;
        z-index: 1;
        height: 600px;
        margin: 0 0 -100px;
    }

    #mainVis #slider_idx_mv_sp {
        position: absolute;
        z-index: -1;
        top: 0;
        width: 100vw;
        height: 100%;
        opacity: 0.4;
    }

    #mainVis .areaInner {
        padding: 130px 0 0;
    }

    #mainVis p {
        width: auto;
        margin: 0 0 30px;
        padding: 0 25% 0 4%;
    }

    #mainVis .btn-link a {
        background: url("./img/arrow_ccl_down.svg") 0 calc(100% - 20px) no-repeat;
        background-size: 17px auto;
    }

    /* mokuji_SP */
    .mokuji {
        margin: 20px 0 40px;
        top: auto;
        min-width: inherit;
        width: 90%;
        height: auto;
        z-index: 1;
        position: relative;
    }

    .mokuji li a {font-size: 1.5rem;}

    .mokuji #toc > ul > li::after {
    /* font-size: 1.3rem; */
}

    /*------------
indexSect_SP
------------*/
    .indexSect {
    }

    .typeA::before {
        width: 0;
        height: 0;
        background: none;
        border: none;
    }

    .typeB::before {
        width: 0;
        height: 0;
        background: none;
        border: none;
    }

    .indexSect .areaInner {
        padding: 30px 0 80px;
    }

    .typeA .areaInner::before {
        content: "";
        position: absolute;
        top: -5px;
        left: 5%;
    }

    .typeA .areaInner::after {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        height: 1px;
        background: #7f6447;
    }

    .typeB .areaInner::before {
        content: "";
        position: absolute;
        top: -5px;
        right: 5%;
    }

    .typeB .areaInner::after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        height: 1px;
        background: #7f6447;
    }

    .indexSect .headArea h2 {
        margin: 0 5% 25px;
        font-size: 2.5rem;
    }

    .indexSect .headArea h2 a {
        padding: 0 0 30px;
        background: url(./img/arrow_ccl.svg) 3px 100% no-repeat;
        background-size: 20px auto;
        line-height: 1.6;
    }

    .typeB .headArea h2 a {
        background: url(./img/arrow_ccl.svg) calc(100% - 5px) 100% no-repeat;
        background-size: 20px auto;
    }

    .indexSect .intro {
        padding: 0 5% 20px;
    }

    .indexSect .box2, .indexSect .box3, .indexSect .box4 {
        display: block;
        padding: 0 5%;
    }

    .indexSect .liBox {
    }

    .indexSect .box2 .liBox {
        width: auto;
        margin: 0 0 20px;
    }

    .indexSect .box2 .liBox:nth-child(2n) {
        margin: 0 0 20px;
    }

    .indexSect .box2 .liBox {
        width: 100%;
        margin: 0 0 20px;
    }

    .indexSect .box2 .liBox:nth-child(2n) {
        margin: 0 0 20px;
    }

    .indexSect .box3 .liBox {
        width: 100%;
        margin: 0 0 20px;
    }

    .indexSect .box3 .liBox:nth-child(3n) {
        margin: 0 0 20px;
    }

    /*------------
sect01_SP
------------*/
    #sect01 {
    margin-top: 10rem;
    }

    #sect01::after {
        width: 0;
        height: 0;
        background: none;
        border: none;
    }

    #sect01 .areaInner::before {
        width: 75px;
        height: 11px;
        background: url("./img/eng_gal.svg") 0 0 no-repeat;
        background-size: auto 11px;
    }

    #sect01 .areaInner::after {
        width: calc(100% - 100px);
    }

    #sect01 .ulBox {
        display: flex;
        flex-wrap: wrap;
    }

    #sect01 .liBox {
        width: 48%;
        margin: 0 4% 20px 0;
    }

    #sect01 .liBox:nth-child(2n) {
        margin: 0 0 20px 0;
    }

    #sect01 .liBox a:hover, #sect01 .liBox a:hover img {
        opacity: 1;
    }

    #sect01 .liBox .flame {
        position: relative;
        display: flex;
        align-items: center;
        height: 160px;
        background: #232f30;
    }

    #sect01 .liBox .flame::before {
        width: 0;
        height: 0;
        background: none;
        border: none;
    }

    #sect01 .liBox a:hover .flame::before {
        opacity: 0;
    }

    #sect01 .liBox a:hover .flame p {
        display: none;
    }

    #sect01 .liBox img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    #sect01 .liBox .caption {
        text-align: left;
    }

    /* remodal_custom */
    .remodal-overlay {
        background: rgba(3,5,5,.8);
    }

    .remodal-wrapper {
        overflow-x: hidden;
        padding: 10px 0 0;
    }

    .remodal {
        max-width: 90%;
        padding: 0;
        background: none;
        color: #fff;
    }

    .remodal-close {
        position: absolute;
        z-index: 10;
        top: -5px;
        left: auto;
        right: 0;
        width: 50px;
        height: 50px;
        background: url(./img/sp-btn-menu_off.png) 0 0 no-repeat;
        background-size: 100% auto;
    }

    .remodal-close:before {
        content: "";
        width: 0;
        height: 0;
        background: none;
        border: none;
    }

    .remodal h3 {
        margin: 0 0 20px;
        padding: 0 80px 0 0;
        font-size: 2.0rem;
        text-align: left;
    }

    .remodal .flame {
        margin: 0 0 10px;
    }

    .remodal .caption {
        margin: 0 0 20px;
    }

    .remodal p {
        width: auto;
        float: none;
        text-align: left;
    }

    .remodal .btn-link {
        width: auto;
        float: none;
        margin: 10px 0 0!important;
        text-align: right;
    }

    .remodal .btn-link a {
        position: relative;
        right: -5%;
        background: url(./img/arrow_ccl_down.svg) 0 calc(100% - 20px) no-repeat;
        background-size: 17px auto;
        text-align: left;
    }

    /*------------
sect02_SP
------------*/
    #sect02 {
        padding: 0 0 50px;
        margin-top: 10rem;
    }

    #sect02::after {
        content: "";
        position: absolute;
        z-index: -1;
        top: -150px;
        bottom: auto;
        right: auto;
        left: 0;
        width: 400px;
        height: 550px;
        background: url(./img/yuge02.png) 0 0 no-repeat;
        background-size: auto 550px;
    }

    #sect02 .areaInner {
        padding: 30px 0 40px;
    }

    #sect02 .areaInner::before {
        width: 40px;
        height: 11px;
        background: url("./img/eng_type.svg") 0 0 no-repeat;
        background-size: auto 11px;
    }

    #sect02 .areaInner::after {
        width: calc(100% - 65px);
    }

    #sect02 .headArea .catch {
        margin: 0 5% 15px;
        font-size: 1.8rem;
        text-align: left;
    }

    #sect02 .headArea p {
        position: relative;
        z-index: 1;
        margin: 25px 5% 25px;
    }

    #sect02 .headArea .flame {
        margin: 0;
        width: 100%;
    }

    #sect02 .headArea .flame img{margin: auto;}
    
    #sect02 .tabArea {
        padding: 40px 0 20px;
        background: rgb(0,0,0);
        background: linear-gradient(90deg, rgba(0,0,0,0) 5%, rgba(0,0,0,1) 20%, rgba(0,0,0,1) 80%, rgba(0,0,0,0) 95%);
    }

    #sect02 .tabArea .inner {
        width: auto;
        margin: 0 auto;
    }

    #sect02 .tab {
        display: flex;
        flex-wrap: wrap;
        margin: 0 5% 35px 5%;
        border-bottom: 1px solid #fff;
    }

    #sect02 .tab div {
        position: relative;
        bottom: -1px;
        padding: 15px 1%;
        width: calc(100% / 3);
        text-align: center;
        font-size: 1.3rem;
    }

    #sect02 .tab div.select {
        border: 1px solid #fff;
        border-bottom: 1px solid #030505;
    }


    
    #sect02 .tab div.select::before {
        width: 100%;
        height: 3px;
        background: #000;
        content: "";
        position: absolute;
        bottom: -2px;
        left: 0;
        right: 0;
    }

        #sect02 .tab div.select::after {
        width: 100%;
        content: "▽";
        position: absolute;
        bottom: -19px;
        left: 0;
        right: 0;
        font-size: 1.8rem;
        font-weight: 700;
    }

    #sect02 .content .hide {
        display: none;
    }

    #sect02 .tabArea .content {
        display: block;
    }

    #sect02 .tabArea .tabCnt {
        width: auto;
        margin: 0 5%;
    }

    #sect02 .tabArea .tabCnt:nth-child(3n) {
        margin: 0 5%;
    }

    #sect02 .tabCnt .boxHead {
        position: relative;
        padding: 10px 5% 40px;
        background: rgb(72,0,0);
        background: linear-gradient(90deg, rgba(72,0,0,0.8) 0%, rgba(114,0,0,0.8) 100%);
        box-shadow: rgba(255, 255, 255, 0.2) 0px -2px 15px;
        margin-bottom: 0.8rem;
    }

    #sect02 .tabCnt:nth-child(2) .boxHead {
        background: rgb(0,45,90);
        background: linear-gradient(90deg, rgba(0,45,90,0.8) 0%, rgba(0,61,121,0.8) 100%);
    }

    #sect02 .tabCnt:nth-child(3) .boxHead {
        background: rgb(48,38,27);
        background: linear-gradient(90deg, rgba(48,38,27,0.8) 0%, rgba(79,62,44,0.8) 100%);
    }

    #sect02 .tabCnt .boxHead::before {
        content: "";
        position: absolute;
        bottom: 24px;
        left: 6%;
        width: 100%;
        height: 11px;
        background: url(./img/eng_301.svg) 0 0 no-repeat;
        background-size: auto 11px;
    }

    #sect02 .tabCnt:nth-child(2) .boxHead::before {
        background: url(./img/eng_302.svg) 0 0 no-repeat;
        background-size: auto 11px;
    }

    #sect02 .tabCnt:nth-child(3) .boxHead::before {
        background: url(./img/eng_303.svg) 0 0 no-repeat;
        background-size: auto 11px;
    }

    #sect02 .tabCnt .headCatch {
        font-size: 2rem;
        /* font-weight: 700; */
        font-feature-settings: "palt" 1;
        letter-spacing: .1em;
    }

    #sect02 .tabCnt h3 {
        font-size: 1.8rem;
        letter-spacing: 0;
    }

    #sect02 .tabCnt .flame {
        height: 325px;
        margin: -8px 0 25px;
    }

    #sect02 .tabCnt .flame img {
        height: 100%;
        object-fit: cover;
        object-position: 50% 50%;
    }

    #sect02 .tabCnt ul {
        margin: 0;
        padding: 10px 0 0;
    }

    #sect02 .tabCnt ul li {
        padding: 0 0 4px 1em;
        line-height: 1.8;
        letter-spacing: 0;
    }

    #sect02 .tabCnt ul li::before {
        position: absolute;
        content: "";
        background: #fff;
        border-radius: 50%;
        width: 3px;
        height: 3px;
        top: 12px;
        left: 6px;
    }

    #sect02 .tabCnt h4 {
        letter-spacing: 0;
    }

    #sect02 .tabCnt .meritBox {
        margin: 0 0 20px;
    }

    #sect02 .tabCnt .meritBox h4 {
        padding: 0 0 8px;
        border-bottom: 1px solid #949494;
        font-size: 1.8rem;
        letter-spacing: 0;
    }

    #sect02 .tabCnt .recBox {
        margin: 15px 0 20px;
        padding: 15px 5% 20px;
        background: rgba(114,0,0,.5);
    }

    #sect02 .tabCnt:nth-child(2) .recBox {
        background: rgba(0,61,121,.5);
    }

    #sect02 .tabCnt:nth-child(3) .recBox {
        background: rgba(79,62,44,.5);
    }

    #sect02 .tabCnt .recBox h4 {
        position: relative;
        padding: 0 0 8px;
        border-bottom: 1px solid #949494;
        font-size: 1.6rem;
        letter-spacing: 0;
    }

    #sect02 .tabCnt .recBox h4::before {
        content: "";
        position: absolute;
        bottom: -1px;
        right: -20px;
        width: 20px;
        height: 1px;
        background: #949494;
    }

    #sect02 .tabCnt .ptBox {
    }

    #sect02 .ptBox h4 {
        padding: 0 0 8px;
        border-bottom: 1px solid #949494;
        font-size: 1.6rem;
        letter-spacing: 0;
        color: #e1b17d;
    }

    #sect02 .ptBox h4 .fontL {
        display: block;
        font-size: 1.8rem;
    }

    #sect02 .ptBox p {
        margin: 10px 0;
        letter-spacing: 0;
    }

    #sect02 .btn-link {
        margin: 10px auto 0!important;
    }

    #sect02 .btn-link a {
        position: relative;
        right: -5%;
        background: url(./img/arrow_ccl_down.svg) 0 calc(100% - 20px) no-repeat;
        background-size: 17px auto;
    }

    #sect02 .btn-link a::after {
        width: 100%;
        height: 1px;
        background: #fff;
    }

    #sect02 .tabCnt:nth-child(3) .btn-link {
        bottom: auto;
    }

    /*------------
sect03_SP
------------*/
    #sect03 {
    margin-top: 10rem;
    }

    #sect03::after {
        content: "";
        position: absolute;
        top: -50px;
        right: 0;
        width: 400px;
        height: 550px;
        background: url(./img/yuge01.png) 100% 0 no-repeat;
        background-size: auto 550px;
    }

    #sect03 .areaInner {
        padding: 30px 0 25px;
    }

    #sect03 .areaInner::before {
        width: 70px;
        height: 11px;
        background: url("./img/eng_by.svg") 0 0 no-repeat;
        background-size: auto 11px;
    }

    #sect03 .areaInner::after {
        width: calc(100% - 95px);
    }

    #sect03 h2 .fontK {
        position: relative;
        left: -10px;
    }

    .sect03Box {
        position: relative;
        margin: 0 0 150px;
    }

    .sect03Box::after {
        content: "";
        position: absolute;
        z-index: -1;
        top: 25%;
        left: 0;
        width: 400px;
        height: 550px;
        background: url(./img/yuge02.png) 0 0 no-repeat;
        background-size: auto 550px;
    }

    .sect03Box .inner {
        width: auto;
        margin: 0 auto;
    }

    .sect03Box .boxHead {
        position: relative;
        margin: 0 0 20px 5%;
        padding: 15px 5% 20px;
        border-right: none;
    }

    .sect03Box .boxHead::before {
        content: "";
        position: absolute;
        z-index: -1;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgb(72,0,0);
        background: linear-gradient(90deg, rgba(72,0,0,0.6) 0%, rgba(114,0,0,0.6) 43%);
        border: 1px solid rgba(232,232,232,.1);
        box-shadow: rgba(255, 255, 255, .1) 0px -2px 15px;
    }

    #sect302 .boxHead::before {
        background: linear-gradient(90deg, rgba(0,45,90,0.6) 0%, rgba(0,61,121,0.6) 43%);
    }

    #sect303 .boxHead::before {
        background: linear-gradient(90deg, rgba(48,38,27,0.6) 0%, rgba(79,62,44,0.6) 43%);
    }

    .sect03Box .boxHead::after {
        content: "";
        position: absolute;
        bottom: 45px;
        right: 5%;
        width: 100%;
        height: 10px;
        background: url(./img/eng_301.svg) 100% 0 no-repeat;
        background-size: auto 10px;
    }

    #sect302 .boxHead::after {
        background: url(./img/eng_302.svg) 100% 0 no-repeat;
        background-size: auto 10px;
    }

    #sect303 .boxHead::after {
        background: url(/wp/wp-content/uploads/Traditional.png) 100% 0 no-repeat;
        background-size: auto 10px;
    }

    .sect03Box .boxHead .catch {
        margin: 0 0 10px;
        font-size: 5.9vw;
        padding: 1rem 0 1rem;
    }

    .sect03Box h3 {
        margin: 0 0 20px;
        font-size: 5.4vw;
    }

    .sect03Box .boxHead .sttl {
        margin: 0;
        font-size: 1.5rem;
        text-align: right;
    }

    .sect03Box .introBox {
        position: relative;
        margin: 0 0 35px 5%;
        padding: 25px 5% 20px;
    }

    .sect03Box .introBox::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100vw;
        height: 100%;
        background: url(./img/bg_h2.png) 0 0 repeat;
    }

    .sect03Box .introBox::after {
        content: "";
        position: absolute;
        top: -5px;
        left: -5px;
        width: 100vw;
        height: 100%;
        background: rgba(255,255,255,.1)
    }

    .sect03Box .introBox h4 {
        display: inline-block;
        padding: 0 0 10px;
        border-bottom: 1px solid #949494;
        font-size: 2.2rem;
    }

    .sect03Box .introBox h4::before {
        content: "";
        position: absolute;
        bottom: -1px;
        left: -100vw;
        width: 100vw;
        height: 1px;
        background: #949494;
    }

    /* fixBan3 */
    .sect03Box .fixBan3 {
        position: static;
        width: auto;
        min-height: 0;
        margin: 0 0 36px 5%;
        padding: 0 0 20px;
        background: rgba(114,0,0,.4);
        opacity: 1;
        visibility: initial;
    }

    #sect302 .fixBan3 {
        background: rgba(0,61,121,.4);
    }

    #sect303 .fixBan3 {
        background: rgba(79,62,44,.4);
    }

    .sect03Box .fixBan3 .mainArea {
        padding: 18px 20px 10px;
    }

    .sect03Box .fixBan3 .sttl {
        margin: 0 0 5px;
        font-size: 1.5rem;
        letter-spacing: 0;
    }

    .sect03Box .fixBan3 .catch {
        display: none;
    }

    .sect03Box .fixBan3 .boxTtl {
        margin: 0 0 10px;
        font-size: 2.2rem;
        line-height: 1.5;
    }

    .sect03Box .fixBan3 a {
        width: 65%;
        margin: 0 0 0 35%;
        padding: 15px 5% 38px;
        background: url(./img/arrow_ccl.svg) calc(100% - 20px) calc(100% - 10px) no-repeat;
        background-size: 16px auto;
        border: 1px solid #949494;
        border-right: none;
        font-size: 1.4rem;
        font-weight: 700;
        text-align: right;
        line-height: 1.4;
    }

    .sect03Box .mini {
        margin: 0 0 40px;
    }

    .sect03Box .mini h4 {
        display: inline-block;
        margin: 0 0 0;
        padding: 0 0 10px 5%;
        border-bottom: 1px solid #949494;
        font-size: 2.0rem;
    }

    .sect03Box .mini h4::before {
        content: "";
        position: absolute;
        bottom: -1px;
        left: -100vw;
        width: 100vw;
        height: 1px;
        background: #949494;
    }

    /* mini01 */
    .sect03Box .mini01 .ulBox {
        padding: 20px 5% 0 15%;
    }

    .sect03Box .mini01 .boxTtl {
        position: relative;
        padding: 0 0 10px;
        border-bottom: 1px solid #949494;
        font-size: 1.6rem;
        font-weight: 700;
        font-feature-settings: "palt" 1;
        letter-spacing: .1em;
        line-height: 1.6;
    }

    .sect03Box .mini01 .boxTtl::before {
        content: "";
        position: absolute;
        top: 2px;
        left: -32px;
        width: 23px;
        height: 18px;
        background: url(./img/ico_ck.svg) 0 0 no-repeat;
    }

    /* mini02 */
    .sect03Box .mini02 p {
        margin: 15px 0 0;
        padding: 0 5%;
    }

    /* mini03 */
    .sect03Box .mini03 {
        margin: 0 0 40px;
    }

    .sect03Box .mini03 .ulBox {
        padding: 20px 5% 0;
    }

    .sect03Box .mini03 .liBox {
        margin: 0 0 30px;
    }

    .sect03Box .mini03 .liBox:last-child {
        margin: 0 0 0;
    }

    .sect03Box .mini03 .boxTtl {
        position: relative;
        padding: 0 0 10px;
        font-size: 1.6rem;
        font-weight: 700;
        font-feature-settings: "palt" 1;
        letter-spacing: .1em;
    }

    .sect03Box .mini03 .imgArea {
        width: auto;
        float: none;
    }

    .sect03Box .mini03 .caption {
        text-align: left;
    }

    .sect03Box .mini03 table {
        width: 100%;
        float: none;
        margin: 20px 0 0;
    }

    .sect03Box .mini03 th {
        width: auto;
        padding: 10px 3%;
        line-height: 1.6;
        text-align: left;
    }

    .sect03Box .mini03 td {
        padding: 10px 3%;
        text-align: left;
    }

    .sect03Box .btn-web {
        margin: 0 0 30px!important;
    }

    .sect03Box .btn-tel {
        margin: 0 0 40px!important;
    }

    .sect03Box .btn-web a, .sect03Box .btn-tel a {
        text-align: left;
        width: 65%;
        max-width: initial;
    }

    #sect302 .btn-web a, #sect302 .btn-web a::before {
        background-color: rgba(0,61,121,.5);
    }

    #sect303 .btn-web a, #sect303 .btn-web a::before {
        background-color: rgba(79,62,44,.5);
    }

    /* mini04 */
    .sect03Box .mini04 table {
        margin: 30px 5% 0;
    }

    .sect03Box .mini04 th {
        width: auto;
        padding: 10px 3%;
        line-height: 1.6;
        text-align: left;
    }

    .sect03Box .mini04 td {
        padding: 10px 3%;
        text-align: left;
    }

    /* mini04 */
    .sect03Box .botArea {
        background: rgba(255,255,255,.1);
    }

    .sect03Box .botArea p {
        width: auto;
        margin: 0;
        padding: 16px 5% 20px;
        font-size: 1.1rem;
        letter-spacing: 0;
        color: #ccc;
    }

    .sect03Box .botArea .fontBold {
        display: block;
    }

    /* swiper */
    .sect03Box .swiper-container {
    }

    .sect03Box .swiper-wrapper {
        padding: 0 0 30px;
        margin-bottom: 1rem;
    }

    .sect03Box .swiper-slide {
    }

    .sect03Box .swiper-slide .caption {
        text-align: left;
    }

    .sect03Box .swiper-pagination {
        bottom: 15px;
    }

    .sect03Box .swiper-pagination-bullet {
        width: 10px;
        height: 10px;
        opacity: 0.5;
        background: #fff;
        margin: 0 9px 7px !important;
    }

    .sect03Box .swiper-pagination-bullet-active {
        opacity: 1;
        background: #fff;
        width: 10px;
        height: 10px;
    }

    .sect03Box .swp-next, .sect03Box .swp-prev {
        top: -45%;
        width: 24px;
        height: 100%;
        position: absolute;
        z-index: 1;
        cursor: pointer;
    }

    .sect03Box .swp-next {
        background: url(./img/arrow_ccl.svg) 0% calc(50% - 12px) no-repeat;
        background-size: 24px auto;
        left: auto;
        right: 1%;
    }

    .sect03Box .swp-prev {
        background: url("./img/arrow_ccl_rv.svg") 0% calc(50% - 12px) no-repeat;
        background-size: 24px auto;
        left: 1%;
    }

    .sect03Box .flame img {
        max-height: 26rem;
    }

    /*------------
sect04_SP
------------*/
    #sect04::after {
        z-index: -1;
        content: "";
        position: absolute;
        top: 55px;
        left: 0;
        width: 100%;
        height: calc(100% - 45px);
        background: rgba(89,89,89,.2);
    }

    #sect04 .decoInner {
        position: relative;
    }

    #sect04 .decoInner::after {
        content: "";
        position: absolute;
        z-index: -1;
        top: -150px;
        right: 0;
        width: 400px;
        height: 550px;
        background: url(./img/yuge01.png) 100% 0 no-repeat;
        background-size: auto 550px;
    }

    #sect04 .areaInner {
        padding: 30px 0 150px;
    }

    #sect04 .areaInner::before {
        width: 35px;
        height: 11px;
        background: url("./img/eng_list.svg") 0 0 no-repeat;
        background-size: auto 11px;
    }

    #sect04 .areaInner::after {
        width: calc(100% - 65px);
    }

    #sect04 .headArea p {
        margin: 0 5% 30px;
    }

    #sect04 .liBox {
        padding: 0 0 30px;
        border: 1px solid #949494;
    }

    #sect04 .liBox h3 {
        margin: 0 0 15px;
        border-bottom: 1px solid #949494;
    }

    #sect04 .liBox a {
        display: block;
        padding: 20px 10% 20px 5%;
        background: url(./img/arrow_ccl.svg) calc(100% - 18px) 50% no-repeat rgba(46,41,36,1.00);
        background-size: 17px auto;
        font-size: 2.0rem;
    }

    #sect04 .liBox p {
        padding: 0 5%;
        letter-spacing: 0;
    }

    #sect04 .liBox table {
        margin: 20px 5% 0;
        width: 90%;
    }

    #sect04 .liBox th {
        width: auto;
        padding: 10px 3%;
        font-size: 1.3rem;
        text-align: left;
    }

    #sect04 .liBox td {
        width: auto;
        padding: 10px 3%;
        font-size: 1.3rem;
        text-align: left;
    }

    #sect04 .moreBtn a {
        cursor: pointer;
        width: 70%;
        background: url(./img/plus.svg) 0 calc(100% - 20px) no-repeat;
        background-size: 17px auto;
        padding: 20px 5% 50px 0;
        text-align: left;
    }

    #sect04 .moreBtn a.boxclose {
        background: url(./img/minus.svg) 0 calc(100% - 20px) no-repeat;
        background-size: 17px auto;
        padding: 20px 5% 50px 0;
    }

    /*------------
sect05_SP
------------*/
    #sect05 {
        margin: 0 0 150px;
        padding: 55px 0 0;
    }

    #sect05::before {
        top: 130px;
        background: #fff;
    }

    #sect05 .areaInner {
        padding: 30px 0 20px;
    }

    #sect05 .areaInner::before {
        width: 65px;
        height: 11px;
        /* background: url("./img/eng_spc_wt.svg") 0 0 no-repeat; */
        background-size: auto 11px;
    }

    #sect05 .areaInner::after {
        width: calc(100% - 95px);
        /* background: #fff; */
    }

    #sect05 .sttl {
        left: 3%;
        margin: 0 0 5px;
        font-size: 1.8rem;
    }

    #sect05 h2 {
        font-size: 1.8rem;
        text-align: left;
    }

    #sect05 h2 .fontL {
        display: block;
        font-size: 3rem;
    }

    #sect05 p {
        margin: 10px 5% 25px;
    }

    #sect05 #slider_idx_sct5_sp {
        position: absolute;
        z-index: -1;
        top: 0;
        left: 0;
        width: 100vw;
        height: 100%;
        opacity: 0.3;
    }

    /*------------
sect06_SP
------------*/
    #sect06 {
        margin-bottom: 10rem;
    }

    #sect06::after {
        content: "";
        position: absolute;
        z-index: -1;
        top: -100px;
        left: 0;
        width: 400px;
        height: 550px;
        background: url(./img/yuge02.png) 0 0 no-repeat;
        background-size: auto 550px;
        z-index: -1;
    }

    #sect06 .areaInner::before {
        width: 180px;
        height: 11px;
        background: url("./img/eng_case.svg") 0 0 no-repeat;
        background-size: auto 11px;
    }

    #sect06 .areaInner::after {
        width: calc(100% - 210px);
    }

    #sect06 .headArea {
        position: relative;
        z-index: 1;
        margin: 0 0 30px;
    }

    #sect06 .headArea p {
        margin: 0 5%;
    }

    #sect06 .ulBox {
        padding: 0;
    }

    #sect06 .liBox {
        width: auto;
        margin: 0;
        padding: 45px 0 0;
    }

    #sect06 .liBox::before {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        width: 100%;
        height: 100%;
        background: url(./img/sct06_boxbg_sp.jpg) 0 0 no-repeat;
        background-size: cover;
    }

    #sect06 .liBox:nth-child(2n)::before {
        right: auto;
        left: 0;
    }

    #sect06 .liBox a {
        position: relative;
        z-index: 1;
        margin: 0 0 0 6%;
        padding: 20px 5% 40px;
        background: url(./img/arrow_ccl.svg) 95% calc(100% - 18px) no-repeat rgba(29,30,40,.9);
        background-size: 17px auto;
    }

    #sect06 .liBox h3 {
        display: block;
        font-size: 2.0rem;
    }

    #sect06 .ulBox.box2 .liBox.firstimg::before {
        background: url(./img/sct06_boxbg01.jpg) 50% 0 no-repeat;
        background-size: cover;
    }

    #sect06 .liBox:nth-child(1)::before {
        background: url(./img/sct06_boxbg02.jpg) 50% 0 no-repeat;
        background-size: cover;
    }

    #sect06 .liBox:nth-child(2)::before {
        background: url(./img/sct06_boxbg03.jpg) 50% 0 no-repeat;
        background-size: cover;
    }

    #sect06 .liBox:nth-child(3)::before {
        background: url(./img/sct06_boxbg04.jpg) 50% 0 no-repeat;
        background-size: cover;
    }

    #sect06 .liBox:nth-child(4)::before {
        background: url(./img/sct06_boxbg05.jpg) 50% 0 no-repeat;
        background-size: cover;
    }

    #sect06 .liBox:nth-child(5)::before {
        background: url(./img/sct06_boxbg06.jpg) 50% 0 no-repeat;
        background-size: cover;
    }

    #sect06 .liBox:nth-child(6)::before {
        background: url(./img/sct06_boxbg07.jpg) 50% 0 no-repeat;
        background-size: cover;
    }

    /*------------
sect07_SP
------------*/
    #sect07 {
        margin-bottom: 10rem;
    }

    #sect07::after {
        content: "";
        position: absolute;
        z-index: -1;
        top: 40px;
        left: calc(50% - 160px);
        width: 1150px;
        height: 1190px;
        background: url("./img/sct07_bg.png") 0 -140px no-repeat;
        background-size: 575px auto;
    }

    #sect07 .areaInner {
        padding: 30px 0 30px;
    }

    #sect07 .areaInner::before {
        width: 160px;
        height: 19px;
        background: url("./img/eng_kn.svg") 0 0 no-repeat;
        background-size: auto 11px;
    }

    #sect07 .areaInner::after {
        width: calc(100% - 190px);
    }

    #sect07 .headArea p {
        margin: 0 5%;
    }

    #sect07 .ulBox {
        padding: 10px 0 0;
    }

    #sect07 .liBox {
        margin: 0 5% 30px 0;
        padding: 25px 5% 10px;
        background: rgba(79,62,44,.2);
    }

    #sect07 .liBox::before {
        content: "";
        position: absolute;
        top: 0;
        left: -100vw;
        width: 100vw;
        height: 100%;
        background: rgba(79,62,44,.2);
    }

    #sect07 .liBox h3 a {
        position: relative;
        margin: 0 0 10px;
        padding: 0 10% 10px 0;
        background: url(./img/arrow_ccl.svg) 100% 50% no-repeat;
        background-size: 17px auto;
        border-bottom: 1px solid #949494;
        font-size: 2.0rem;
    }

    #sect07 .liBox h3 a::before {
        content: "";
        position: absolute;
        bottom: -1px;
        left: -100vw;
        width: 100vw;
        height: 1px;
        background: #949494;
    }

    /*------------
sect08_SP
------------*/
    #sect08::before {
        content: "";
        position: absolute;
        z-index: -1;
        top: 150px;
        left: 0;
        width: 90%;
        height: 670px;
        background: url(./img/sct08_bg_sp.jpg) 0 0 no-repeat;
        background-size: cover;
        opacity: 0.7;
    }

    #sect08::after {
        content: "";
        position: absolute;
        z-index: -1;
        top: -200px;
        right: 0;
        width: 400px;
        height: 550px;
        background: url(./img/yuge01.png) 100% 0 no-repeat;
        background-size: auto 550px;
    }

    #sect08 .areaInner {
        padding: 30px 0 30px;
    }

    #sect08 .areaInner::before {
        width: 120px;
        height: 11px;
        background: url("./img/eng_trd.svg") 0 0 no-repeat;
        background-size: auto 11px;
    }

    #sect08 .areaInner::after {
        width: calc(100% - 150px);
    }

    #sect08 .headArea p {
        margin: 0 5%;
    }

    #sect08 .ulBox {
        padding: 20px 0 0 5%;
    }

    #sect08 .liBox {
        margin: 0 0 30px;
        padding: 25px 5% 10px;
        background: rgba(31,35,29,.5);
    }

    #sect08 .liBox::before {
        width: 0;
        height: 0;
        background: none;
        border: none;
    }

    #sect08 .liBox h3 a {
        position: relative;
        margin: 0 0 10px;
        padding: 0 10% 10px 0;
        background: url(./img/arrow_ccl.svg) 100% 50% no-repeat;
        background-size: 17px auto;
        border-bottom: 1px solid #949494;
        font-size: 2.0rem;
    }

    #sect08 .liBox h3 a::before {
        content: "";
        position: absolute;
        bottom: -1px;
        right: -100vw;
        width: 100vw;
        height: 1px;
        background: #949494;
    }

    /*  End_SP */
}
