@charset "UTF-8";

/*----------------------------------------------------- CONTENTS COMMON */
.alt {position:absolute;top:-5000px;left:-9999px;}

body {
	-webkit-text-size-adjust:100%;
	-ms-text-size-adjust: 100%;
	font-feature-settings: "palt";
	letter-spacing: 0.1em;
}


/*----------------------------------------------------- MAIN IMG */

#contents {
 background: url(../img/bg.jpg) repeat center top;
 background-size: 50%;
 padding-bottom: calc(100vw / 12.8);
}

#contents #mainImg {
 background: url(../img/main_img.jpg) no-repeat center top;
 background-size: contain;
 aspect-ratio: 2560 / 1408;
 position: relative;
}

#contents #mainImg .couponCode {
 color: #111;
 font-size: calc(46vw / 12.8);
 font-weight: bold;
 position: absolute;
 right: -0.2%;
 bottom: 21%;
 transform:translate(-50%, 0);
}


/*----------------------------------------------------- JOUKEN */

#contents .contentBlock {
 width: calc(1000vw / 12.8);
 margin: calc(80vw / 12.8) auto 0;
}

#contents #jouken h2 {
 width: calc(233vw / 12.8);
 margin: 0 auto;
}

#contents .contentBlock .contentBox {
 background-color: #fff;
 border-radius: calc(20vw / 12.8);
 margin-top: calc(30vw / 12.8);
 padding: calc(80vw / 12.8) calc(100vw / 12.8);
}

#contents .contentBlock .contentBox .joukenTxt1 {
 font-size: calc(28vw / 12.8);
 font-weight: bold;
 text-align: center;
}

#contents .contentBlock .contentBox .joukenTxt1 span {
 color: #f69;
}

#contents .contentBlock .contentBox .joukenBlock {
 border: 6px #f69 solid;
 border-radius: calc(16vw / 12.8);
 margin-top: calc(60vw / 12.8);
}

#contents .contentBlock .contentBox .joukenBlock h3 {
 width: calc(246vw / 12.8);
 aspect-ratio: 492 / 88;
 margin: calc(-25vw / 12.8) auto 0;
}

#contents .contentBlock .contentBox .joukenBlock .joukenBlockIn {
 padding: calc(24vw / 12.8) calc(36vw / 12.8) calc(36vw / 12.8);
}

#contents .contentBlock .contentBox .joukenBlock .joukenBlockIn .joukenTxt2 {
 color: #f69;
 font-size: calc(24vw / 12.8);
 font-weight: bold;
 text-align: center;
}

#contents .contentBlock .contentBox .joukenBlock .joukenBlockIn .joukenTxt3 {
 font-size: calc(15vw / 12.8);
 text-align: center;
}

#contents .contentBlock .contentBox .joukenBlock .joukenBlockIn dl {
 margin-top: calc(20vw / 12.8);
}

#contents .contentBlock .contentBox .joukenBlock .joukenBlockIn dl dt {
 color: #f69;
 font-size: calc(20vw / 12.8);
 font-weight: bold;
 text-align: center;
 background: #eee;
 border-radius: calc(6vw / 12.8);
}

#contents .contentBlock .contentBox .joukenBlock .joukenBlockIn dl dd {
 font-size: calc(16vw / 12.8);
 text-align: center;
 margin-top: calc(10vw / 12.8);
}

#contents .contentBlock .contentBox .joukenBlock .joukenBlockIn .joukenBlock2 {
 background: #FFEBEB;
 border-radius: calc(6vw / 12.8);
 padding: calc(24vw / 12.8) calc(24vw / 12.8);
 margin-top: calc(20vw / 12.8);
}

#contents .contentBlock .contentBox .joukenBlock .joukenBlockIn .joukenBlock2 h4 {
 width: calc(490vw / 12.8);
 margin: 0 auto;
}

#contents .contentBlock .contentBox .joukenBlock .joukenBlockIn .joukenBlock2 .joukenTxt4 {
 font-size: calc(20vw / 12.8);
 text-align: center;
 margin-top: calc(10vw / 12.8);
}

#contents .contentBlock .contentBox .joukenBlock .joukenBlockIn .joukenBlock2 .joukenTxt4 strong {
 font-weight: bold;
}

#contents .contentBlock .contentBox .joukenBlock .joukenBlockIn .taishoBtn {
 text-align: center;
}

#contents .contentBlock .contentBox .joukenBlock .joukenBlockIn .taishoBtn a {
 color: #f69;
 font-size: calc(20vw / 12.8);
 font-weight: bold;
 text-decoration: none;
 display: inline-block;
 border: #f69 2px solid;
 border-radius: 2em;
 padding: 0.2em 1.5em;
 margin-top: calc(20vw / 12.8);
}

#contents .contentBlock .contentBox .joukenBlock .joukenBlockIn .joukenBlock2 dl {
 margin-top: 0;
}

#contents .contentBlock .contentBox .joukenBlock .joukenBlockIn .joukenBlock2 dt {
 background: transparent;
}

#contents .contentBlock .contentBox .joukenBlock .joukenBlockIn .joukenBlock2 dd {
 margin-top: 0;
}

#contents .contentBlock .contentBox .joukenBlock .joukenBlockIn .joukenBlock2 dd strong {
 font-weight: bold;
}

#contents .contentBlock .contentBox .joukenBlock .joukenBlockIn .joukenTxt5 {
 font-size: calc(15vw / 12.8);
 text-align: center;
 margin-top: calc(20vw / 12.8);
}

/*----------------------------------------------------- MENU BTN */

#contents .menuBtn {
 margin-top: calc(80vw / 12.8);
}

#contents .menuBtn p {
 text-align: center;
}

#contents .menuBtn p a {
 color: #fff;
 font-size: calc(24vw / 12.8);
 line-height: 100%;
 text-decoration: none;
 text-indent: 2.3em;
 display: inline-block;
 background: #B09A68;
 background-size: cover;
 border-radius: 0.3em;
 padding: 1em 4.8em;
 position: relative;
}

#contents .menuBtn p a::before {
 content: "";
 display: inline-block;
 width: 1.4em;
 height: 1.4em;
 background: url(../img/common/icon/icon_menu_white.svg) no-repeat center center;
 background-size: contain;
 position: absolute;
 top: 0.8em;
 left: 5em;
}


/*----------------------------------------------------- OTOKU */

#contents #otoku {
 background: #fff;
 position: relative;
 border-radius: calc(20vw / 12.8);
 margin: calc(120vw / 12.8) auto 0;
 padding: calc(80vw / 12.8) calc(100vw / 12.8);
}

#contents #otoku h2 {
 text-align: center;
 position: absolute;
 top: calc(-30vw / 12.8);
 left: calc(130vw / 12.8);
}

#contents #otoku h2 img {
 width: calc(726vw / 12.8);
}

#contents #otoku .example {
 display: flex;
 justify-content: space-between;
}

#contents #otoku .example li {
 width: calc((100% - 50px) /3);
 background: #FFEBEB;
 border-radius: calc(10vw / 12.8);
}

#contents #otoku .example li .exampleM {
 color: #fff;
 font-size: calc(13vw / 12.8);
 line-height: 1;
 display: inline-block;
 background: #f69;
 border-radius: calc(10vw / 12.8) 0 calc(10vw / 12.8) 0;
 padding: 0.7em;
 margin: 0;
}

#contents #otoku .example li .exampleImg {
 width: calc(242vw / 12.8);
 aspect-ratio: 484 / 584;
 margin: 0 auto;
}

#contents #otoku .example li dl {
 display: flex;
 flex-wrap: wrap;
 margin: 0 calc(20vw / 12.8);
}

#contents #otoku .example li dl dt {
 color: #fff;
 font-size: calc(12vw / 12.8);
 line-height: 250%;
 text-align: center;
 background: #111;
 width: 38%;
 margin-top: calc(10vw / 12.8);
}

#contents #otoku .example li dl dt:last-of-type {
 background: #c00;
}

#contents #otoku .example li dl dd {
 font-size: calc(18vw / 12.8);
 font-weight: bold;
 background: #fff;
 width: 62%;
 padding-left: 0.5em;
 margin-top: calc(10vw / 12.8);
}

#contents #otoku .example li dl dd:last-of-type {
 color: #c00;
}

#contents #otoku .example li dl dd span {
 font-size: calc(10vw / 12.8);
 
}

#contents #otoku .example li .exampleTxt {
 font-size: calc(16vw / 12.8);
 margin: calc(10vw / 12.8) calc(20vw / 12.8);
}

#contents #otoku .caution {
 font-size: calc(16vw / 12.8);
 margin-top: calc(30vw / 12.8);
}


/*----------------------------------------------------- TAISHO */

#contents #taisho h2 {
 width: calc(289vw / 12.8);
 margin: 0 auto;
}

#contents #taisho .taishoTxt1 {
 font-size: calc(27vw / 12.8);
 font-weight: bold;
 text-align: center;
}

#contents #taisho .taishoTxt1 span {
 color: #f69;
}

#contents #taisho .taishoTxt2 {
 font-size: calc(18vw / 12.8);
 font-weight: bold;
 text-align: center;
 margin-top: calc(10vw / 12.8);
}

#contents #taisho .taishoTxt2 span {
 color: #f69;
}

#contents #taisho .taishoImg li {
 margin-top: calc(40vw / 12.8);
}

#contents #taisho .kanshaBtn {
 text-align: center;
 margin-top: calc(40vw / 12.8);
}

#contents #taisho .kanshaBtn a {
 color: #f69;
 font-size: calc(24vw / 12.8);
 font-weight: bold;
 text-decoration: none;
 border: #f69 2px solid;
 border-radius: 2em;
 padding: 0.3em 1.5em;
}

#contents #taisho .taishoTxt3 {
 font-size: calc(16vw / 12.8);
 margin-top: calc(40vw / 12.8);
}


/*----------------------------------------------------- POINT */

#contents #point h2 {
 width: calc(443vw / 12.8);
 margin: 0 auto;
}

#contents #point #pointBox dl {
 display: flex;
 flex-wrap: wrap;
}

#contents #point #pointBox dl dt {
 color: #f69;
 font-size: calc(20vw / 12.8);
 font-weight: bold;
 width: 30%;
 border-bottom: #111 1px dotted;
 padding: calc(30vw / 12.8) 0;
}

#contents #point #pointBox dl dt:last-of-type {
 border-bottom: none;
}

#contents #point #pointBox dl dd {
 width: 70%;
 border-bottom: #111 1px dotted;
 padding: calc(30vw / 12.8) 0;
}

#contents #point #pointBox dl dd:last-of-type {
 border-bottom: none;
}

#contents #point #pointBox dl dd .pointTxt1 {
 font-size: calc(20vw / 12.8);
 font-weight: bold;
}

#contents #point #pointBox dl dd .pointTxt2 {
 font-size: calc(15vw / 12.8);
}

#contents #point #pointBox dl dd .pointTxt2 span {
 color: #f69;
 font-weight: bold;
}



/*----------------------------------------------------- CHUUI */

#contents #chuui h2 {
 width: calc(249vw / 12.8);
 margin: 0 auto;
}

#contents #chuui .contentBox .contentBoxIn {
 padding: calc(60vw / 12.8) calc(100vw / 12.8) calc(100vw / 12.8);
 margin: 8px;
 border: #c00 1px solid;
}

#contents #chuui #chuuiBox h3 {
 color: #00031c;
 font-size: calc(26vw / 12.8);
 font-weight: bold;
 text-align: center;
 background: #eee;
 border-radius: calc(6vw / 12.8);
 padding: 0.2em 0;
 margin-top: calc(40vw / 12.8);
}

#contents #chuui #chuuiBox .list1 li {
 font-size: calc(18vw / 12.8);
 text-indent: -1em;
 padding-left: 1em;
 margin-top: 1em; 
}

#contents #chuui #chuuiBox .list1 li a {
 color: #111;
 text-decoration: underline;
}

#contents #chuui #chuuiBox .chuuiTxt1 {
 font-size: calc(18vw / 12.8);
 margin-top: calc(20vw / 12.8);
}

#contents #chuui #chuuiBox .chuuiTxt1 a {
 color: #fff;
 text-decoration: underline;
}

#contents #chuui #chuuiBox .kakutokuPointImg {
 margin: calc(20vw / 12.8) calc(100vw / 12.8) 0;
}

#contents #chuui #chuuiBox .chuuiTxt2 {
 color: #c00;
 font-size: calc(18vw / 12.8);
 font-weight: bold;
 text-align: center;
 margin-top: calc(30vw / 12.8);
}

#contents #chuui #chuuiBox .list2 {
 border-top: 1px #111 dotted;
 margin-top: 1em;
}

#contents #chuui #chuuiBox .list2 li {
 font-size: calc(15vw / 12.8);
 border-bottom: 1px #111 dotted;
 padding: 0.7em 0;
}

#contents #chuui #chuuiBox .list2 li .color {
 color: #c00;
}

#contents #chuui #chuuiBox .list2 li .bold {
 font-weight: bold;
}


#contents #chuui #chuuiBox .list2 li a {
 color: #111;
 text-decoration: underline;
}


/*----------------------------------------------------- TO TOP BTN */

#contents .totopBtn {
 margin-top: calc(40vw / 12.8);
}

#contents .totopBtn p {
 text-align: center;
}

#contents .totopBtn p a {
 color: #BC3624;
 font-size: calc(24vw / 12.8);
 line-height: 100%;
 text-decoration: none;
 display: inline-block;
 background: #fff;
 border: #BC3624 1px solid;
 border-radius: 0.3em;
 padding: 1em 6em;
 position: relative;
}


#contents .totopBtn p a::before {
 content: "";
 display: inline-block;
 width: 0.5em;
 height: 0.5em;
 background: url(../img/common/icon/icon_triangle_r.svg) no-repeat center center;
 background-size: contain;
 position: absolute;
 top: 1.3em;
 right: 0.5em;
}