@charset "UTF-8";

body {
    font-family: "Oswald","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
    color: #333333;
}

.con_inner {
	max-width: 1280px;
	margin: auto;
}
@media only screen and (max-width: 1280px) {
  .con_inner {
		width: 95%;
  }
}
@media print {
  .con_inner {
		width: 95%;
  }
}
.ie8 .con_inner {
	width: 95%;
}

.con_inner:after, #header .con_header:after {
	content: "";
	display: table;
	clear: both;
}

@font-face {
	font-family: 'Noto Sans Symbols';
	font-style: normal;
	font-weight: 100;
	src: url("../fonts/NotoSansSymbols-Regular.woff") format("woff");
	font-display: swap;
}
/* -----------------------------------------------------------
	基本設定、リンクカラーなど
----------------------------------------------------------- */
html {
	font-size: small;
	line-height: 1.5;
}

body {
	color: #333333;
	background: #e9e0c8;
	-webkit-text-size-adjust: none;
	font-size: 108%;
}
.ie body {
	font-size: 105%;
}
@media only screen and (max-width: 767px) {
  body {
		font-size: 100%;
  }
}
body a {
	color: #4d4d4d;
}
body a:link, body a:visited, body a:active {
	text-decoration: underline;
}
.mouse body a:hover, .touch body a.touchstart {
	text-decoration: none;
	color: #666666;
}
body img {
	max-width: 100%;
	-webkit-touch-callout: none;
}
body i.roman_number {
	font-family: 'Noto Sans Symbols', serif;
	padding: 0 2px;
	line-height: 1.4;
}

body, pre, input, textarea, select {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
}

input, select, textarea {
	font-size: 100%;
}

html.ie8 .view_tab,
html.ie8 .view_tab_sp,
html.ie8 .view_sp {
	display: none !important;
}
html.ie8 #page {
	min-width: 1280px !important;
	margin: auto;
	font-size: 100% !important;
}

@media only screen and (min-width: 1025px) {
  body .view_tab-sp, body .view_tab {
		display: none !important;
  }
}
@media print {
  body .view_tab-sp, body .view_tab {
		display: none !important;
  }
}
.ie8 body .view_tab-sp, .ie8 body .view_tab {
	display: none !important;
}
@media only screen and (min-width: 768px) {
  body .view_sp {
		display: none !important;
  }
}
@media print {
  body .view_sp {
		display: none !important;
  }
}
.ie8 body .view_sp {
	display: none !important;
}
@media only screen and (max-width: 1024px) {
  body .view_pc {
		display: none !important;
  }
}
@media only screen and (max-width: 767px) {
  body .view_pc-tab, body .view_tab {
		display: none !important;
  }
}

.mouse .over {
	-moz-transition: opacity 200ms ease-in;
	-o-transition: opacity 200ms ease-in;
	-webkit-transition: opacity 200ms ease-in;
	transition: opacity 200ms ease-in;
}
.mouse .over:hover, .touch .over.touchstart {
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
	opacity: 0.7;
}
.touch .over {
	-webkit-tap-highlight-color: transparent;
}
.touch .over.touchend {
	-moz-transition-delay: 200ms;
	-o-transition-delay: 200ms;
	-webkit-transition-delay: 200ms;
	transition-delay: 200ms;
}

* {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

*:focus {
	outline: none;
}

input.disabled, label.disabled {
	opacity: 0.5;
}

/* -----------------------------------------------------------
	#page
----------------------------------------------------------- */
#page {
	position: relative;
	right: 0;
	overflow: hidden;
}
@media only screen and (min-width: 768px) {
  #page {
		font-size: 100% !important;
  }
}
@media print {
  #page {
		font-size: 100% !important;
  }
}
.ie8 #page {
	font-size: 100% !important;
}

/* -----------------------------------------------------------
	#header
----------------------------------------------------------- */
#header {
	/**position: absolute;**/
    position: absolute;
	width: 100%;
    height: 83px;
	/**top: 0;
	left: 0;**/
    top: 70px;
	z-index: 500;
    display: flex;
    align-items: center;
    justify-content: center;
}
#header .con_header {
	margin: 0 auto;
	padding: 0 4% 0;
}
@media only screen and (max-width: 1024px) {
  #header .con_header {
		padding: 30px 2.5% 0;
  }
}
@media only screen and (max-width: 767px) {
  #header .con_header {
		padding: 15px 2.5% 0;
  }
}
#header .con_header .box_logo {
	float: left;
	width: 30%;
}
@media only screen and (max-width: 1400px) {
  #header .con_header .box_logo {
		width: 25%;
  }
}
@media print {
  #header .con_header .box_logo {
		width: 25%;
  }
}
.ie8 #header .con_header .box_logo {
	width: 25%;
}
@media only screen and (max-width: 767px) {
  #header .con_header .box_logo {
		width: 50%;
  }
}
#header .con_header .box_logo p {
	font-weight: normal;
	position: relative;
	z-index: 91;
}
#header .con_header .box_logo p a {
	display: block;
	text-decoration: none;
}
#header .con_header .box_logo p a > * {
	display: inline-block;
	vertical-align: middle;
}
@media only screen and (max-width: 767px) {
  #header .con_header .box_logo p a img {
		width: 140px;
  }
}
#header .con_header .box_logo p span {
	color: #fff;
	margin-left: 1em;
	font-size: 115%;
}
@media only screen and (max-width: 767px) {
  #header .con_header .box_logo p span {
		display: block;
		margin-left: 0;
		margin-top: 0.5em;
		font-size: 129%;
  }
}
#header .con_header .box_nav {
	float: right;
	width: 70%;
	margin-top: -10px;
	text-align: right;
	padding-right: 65px;
}
@media only screen and (max-width: 1400px) {
  #header .con_header .box_nav {
		width: 75%;
  }
}
@media print {
  #header .con_header .box_nav {
		width: 75%;
  }
}
.ie8 #header .con_header .box_nav {
	width: 75%;
}
@media only screen and (max-width: 1024px) {
  #header .con_header .box_nav {
		display: none;
  }
}
#header .con_header .box_nav > li {
	display: inline-block;
	vertical-align: middle;
	margin-right: 2em;
	text-align: left;
	position: relative;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #header .con_header .box_nav > li {
		margin-right: 1em;
  }
}
@media only screen and (max-width: 767px) {
  #header .con_header .box_nav > li {
		margin-right: 0.8em;
  }
}
#header .con_header .box_nav > li > a {
	text-decoration: none;
	font-size: 115%;
	color: #fff;
	text-decoration: none !important;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #header .con_header .box_nav > li > a {
		font-size: 108%;
  }
}
@media only screen and (max-width: 767px) {
  #header .con_header .box_nav > li > a {
		font-size: 100%;
  }
}
.mouse #header .con_header .box_nav > li > a:hover, .touch #header .con_header .box_nav > li > a.touchstart {
	text-decoration: underline !important;
}
.touch #header .con_header .box_nav > li > a {
	-webkit-tap-highlight-color: transparent;
}
.touch #header .con_header .box_nav > li > a.touchend {
	-moz-transition-delay: 200ms;
	-o-transition-delay: 200ms;
	-webkit-transition-delay: 200ms;
	transition-delay: 200ms;
}
#header .con_header .box_nav > li.pulldown {
	min-width: 270px;
}
@media only screen and (max-width: 1024px) {
  #header .con_header .box_nav > li.pulldown {
		min-width: 230px;
  }
}
#header .con_header .box_nav > li.pulldown .cap {
	background: rgba(69, 62, 45, 0.9);
	padding: .3em 1em;
	color: #fff;
	font-size: 100%;
	cursor: pointer;
	position: relative;
}
#header .con_header .box_nav > li.pulldown .cap:after {
	content: '\f107';
	position: absolute;
	right: .5em;
	font-family: "FontAwesome";
}
#header .con_header .box_nav > li.pulldown ul {
	position: absolute;
	left: 0;
	width: 100%;
	height: 0;
	-webkit-transition: all 500ms cubic-bezier(0.065, 0.435, 0.15, 0.995);
	-moz-transition: all 500ms cubic-bezier(0.065, 0.435, 0.15, 0.995);
	-o-transition: all 500ms cubic-bezier(0.065, 0.435, 0.15, 0.995);
	transition: all 500ms cubic-bezier(0.065, 0.435, 0.15, 0.995);
  /* custom */
	-webkit-transition-timing-function: cubic-bezier(0.065, 0.435, 0.15, 0.995);
	-moz-transition-timing-function: cubic-bezier(0.065, 0.435, 0.15, 0.995);
	-o-transition-timing-function: cubic-bezier(0.065, 0.435, 0.15, 0.995);
	transition-timing-function: cubic-bezier(0.065, 0.435, 0.15, 0.995);
  /* custom */
	overflow: hidden;
}
#header .con_header .box_nav > li.pulldown ul li a {
	display: block;
	color: #fff;
	text-decoration: none;
	padding: .3em .5em .3em 1em;
	background: rgba(69, 62, 45, 0.9);
}
#header .con_header .box_nav > li.pulldown ul li a:hover {
	background: rgba(69, 62, 45, 0.5);
}
#header .con_header .box_nav > li.pulldown:hover .cap {
	background: rgba(69, 62, 45, 0.5);
}
#header .con_header .box_nav > li.pulldown:hover ul {
	height: 351px;
}
#header .con_header .box_nav > li:last-child {
	margin-right: 0;
}

/* -----------------------------------------------------------
	.con_title
----------------------------------------------------------- */
.con_title {
	margin-bottom: 15px;
}
.con_title .bg {
	height: 90px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	background-image: url(../copy/images/bg_title.jpg);
}
@media only screen and (max-width: 767px) {
  .con_title .bg {
		height: 60px;
  }
}
.con_title h2 {
	font-weight: normal;
	position: relative;
	z-index: 2;
	margin-top: -2.8em;
	text-align: center;
}
.con_title h2 span {
	display: block;
}
.con_title h2 span.en {
	color: #48412d;
	font-size: 286%;
	font-family: "Oswald", sans-serif;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_title h2 span.en {
		font-size: 286%;
  }
}
@media only screen and (max-width: 767px) {
  .con_title h2 span.en {
		font-size: 286%;
  }
}
.con_title h2 span.en em {
	color: #e05f0a;
}
.con_title h2 span.jp {
	font-size: 143%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_title h2 span.jp {
		font-size: 143%;
  }
}
@media only screen and (max-width: 767px) {
  .con_title h2 span.jp {
		font-size: 115%;
  }
}
.con_title h1 {
	font-weight: normal;
	position: relative;
	z-index: 2;
	margin-top: -2.8em;
	text-align: center;
}
.con_title h1 span {
	display: block;
}
.con_title h1 span.en {
	color: #48412d;
	font-size: 286%;
	font-family: "Oswald", sans-serif;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_title h1 span.en {
		font-size: 286%;
  }
}
@media only screen and (max-width: 767px) {
  .con_title h1 span.en {
		font-size: 286%;
  }
}
.con_title h1 span.en em {
	color: #e05f0a;
}
.con_title h1 span.jp {
	font-size: 143%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_title h1 span.jp {
		font-size: 143%;
  }
}
@media only screen and (max-width: 767px) {
  .con_title h1 span.jp {
		font-size: 115%;
  }
}

/* -----------------------------------------------------------
	#contents
----------------------------------------------------------- */

div.info {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 83.5px;
    background: #D65E13;
    line-height: 100%;
    z-index: 100;
}
@media only screen and (max-width: 767px) {
  div.info {
    height: 76px;
  }
}

div.info > a {
    width: 100%;
    margin: 0;
    background: none;
    font-size: 20px;
    font-weight: 600;
    text-align: center;
    color: #FFFFFF;
    transition: .3s;
}
@media only screen and (max-width: 767px) {
  div.info > a {
        padding-left: 10px;
        font-size: 1.3em;
        text-align: left;
        line-height: 130%;
		text-decoration: none;
  }
}

div.info > a span {
    font-size: 16px;
    font-weight: 300;
}

div.info > a:hover {
    color: #333333;
}

ul.main {
    width: 95%;
    height: 300px;
    /** margin: 0 auto; **/
    margin: 150px auto 0 auto;
    padding: 0;
    background: url(../images/bg_main.png) no-repeat center center / cover;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

/** ul.main > li.info {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 70px;
    background: #D65E13;
    line-height: 100%;
}

#contents > ul.main > li.info > a {
    width: 100%;
    margin: 0;
    background: none;
    font-size: 20px;
    font-weight: 600;
    color: #FFFFFF;
    transition: .3s;
}

#contents > ul.main > li.info > a span {
    font-size: 16px;
    font-weight: 300;
}

#contents > ul.main > li.info > a:hover {
    color: #333333;
} **/

ul.main li {
    width: 100%;
    height: 300px;
    margin: 0 auto;
    padding: 0;
    background: rgba(0, 0, 0, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

ul.main li h2 {
    font-size: 30px;
    font-weight: 800;
    line-height: 180%;
    letter-spacing: 0.1em;
    text-align: center;
    color: #FFFFFF;
}

ul.main li h2 span {
    font-size: 1.8em;
}

ul.main li p {
    width: 270px;
    margin: 0 auto;
    font-size: 20px;
    font-weight: 300;
    line-height: 180%;
    text-align: left;
    color: #FFFFFF;
}

h3 {
    font-size: 48px;
    font-family: "Oswald","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
    line-height: 100%;
    text-align: center;
    width: 95%;
    margin: 0 auto;
    padding: 100px 0 0 0;
}

h3 span {
    color: #D65E13;
}

h4 {
    font-size: 24px;
    font-family: "Oswald","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
    line-height: 100%;
    text-align: center;
    width: 95%;
    margin: 50px auto 0 auto;
    padding: 0;
}

p {
    font-size: 14px;
    text-align: center;
    line-height: 180%;
    width: 690px;
    margin: 50px auto 0 auto;
}

ul.program {
    width: 1000px;
    margin: 30px auto 0 auto;
    display: flex;
    justify-content: space-between;
}

ul.program li {
    width: 300px;
    padding: 0 0 18px 0;
    border-radius: 10px;
    background: #FFFFFF;
}

ul li h5 {
    font-size: 18px;
    font-family: "Oswald","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
    line-height: 100%;
    text-align: center;
    margin: 20px 0 0 0;
}

ul li p {
    font-size: 14px;
    line-height: 180%;
    text-align: left;
    width: 250px;
    margin: 15px auto 0 auto;
}

ul.program li img {
    width: 100%;
    height: auto;
    border-radius: 10px 10px 0 0;
}

ul.notice {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 750px;
    margin: 50px auto 0 auto;
    padding: 25px 0 45px 0;
    border-radius: 10px;
    background: #FFFFFF;
    font-size: 20px;
    font-weight: 600;
    text-align: center;
}

ul.notice li:nth-child(1) {
    width: 650px;
    border-bottom: 1px solid #D65E13;
}

ul.notice li:nth-child(2) {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 445px;
    margin: 25px 5px 0 0;
}

ul.notice li:nth-child(2) > strong {
    font-size: 24px;
    font-weight: 600;
    line-height: 200%;
}

ul.notice li:nth-child(2) > p {
    width: 100%;
    margin: 0;
    font-size: 14px;
    font-weight: 300;
    line-height: 178%;
}

#contents > ul.notice > li:nth-child(2) > a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 380px;
    height: 50px;
    margin: 0 auto;
    border-radius: 25px;
    background: #D65E13 url(../images/icn_triangle_right.svg) no-repeat right 10px center;
    font-size: 14px;
    font-weight: 600;
    line-height: 100%;
    color: #FFFFFF;
    transition: .3s;
}

#contents > ul.notice > li:nth-child(2) > a:hover {
    background: #D65E13 url(../images/icn_triangle_right.svg) no-repeat right 7px center;
}

ul.notice li:nth-child(3) {
    width: 200px;
    margin-top: 25px;
    padding-top: 12px;
}

ul.status {
    width: 100%;
    margin: 100px auto 0 auto;
    padding: 0 0 50px 0;
    background: #48412C;
}

ul.status li p {
    font-size: 14px;
    line-height: 180%;
    text-align: center;
    width: 100%;
    margin: 50px auto 0 auto;
}

ul.status li {
    color: #FFFFFF;
    width: 1000px;
    margin: 0 auto;
}

ul.terms {
    width: 1000px;
    margin: 30px auto 0 auto;
    background: #FFFFFF;
    border-top: 1px solid #D9D9D9;
    border-left: 1px solid #D9D9D9;
    display: flex;
    flex-wrap: wrap;
}

ul.terms li {
    font-size: 30px;
    font-family: "Oswald","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
    font-weight: 600;
    line-height: 100%;
    text-align: center;
    color: #333333;
    width: 249px;
    padding: 60px 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

ul.terms li:nth-child(1) {font-size: 20px;padding: 20px 0;}
ul.terms li:nth-child(2) {font-size: 20px;padding: 20px 0;}
ul.terms li:nth-child(3) {font-size: 20px;padding: 20px 0;}
ul.terms li:nth-child(4) {font-size: 20px;padding: 20px 0;}

ul.terms li span.small {
    padding: 16px 0 0 0;
    font-size: 14px;
}

ul.terms li span.thin {
    font-weight: 200;
}

ul.terms li.ttl {
    border-right: 1px solid #D9D9D9;
    border-bottom: 1px solid #D9D9D9;
}

ul.terms li.white {
    background: #F7F7F7;
    border-right: 1px solid #D9D9D9;
    border-bottom: 1px solid #D9D9D9;
}

ul.terms li.blue {
    background: #E7F5FF;
    border-right: 1px solid #D9D9D9;
    border-bottom: 1px solid #D9D9D9;
}

ul.terms li.blue div {
    display: block !important;
}

ul.terms li.none {
    display: initial;
    padding: 45px 0;
}

ul.terms li.gold {
    background: #FFFDF2;
    border-right: 1px solid #D9D9D9;
    border-bottom: 1px solid #D9D9D9;
}
    
ul.terms li.direct {
    width: 100%;
    background: #FFFFFF;
    border-right: 1px solid #D9D9D9;
    border-bottom: 1px solid #D9D9D9;
    font-size: 18px;
}

ul.p-save {
    width: 850px;
    margin: 50px auto 0 auto;
    border-top: 1px solid #9B9B9B;
    display: flex;
    flex-direction: column;
    /** flex-wrap: wrap;
    justify-content: space-between; **/
}

ul.p-save li {
    font-size: 24px;
    font-weight: 700;
    padding: 30px 0;
    padding: 30px 0 0 0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    /** border-bottom: 1px solid #9B9B9B; **/
}

ul.p-save li p {
    width: 90%;
    text-align: center;
    font-weight: 300;
}

ul.p-save li:nth-last-child(1) {
    border-bottom: 1px solid #9B9B9B;
}

/**ul.p-save li:nth-child(odd) {
    width: 480px;
    text-align: left;
}

ul.p-save li:nth-child(even) {
    width: 370px;
    text-align: right;
}**/

ul.use {
    width: 1000px;
    margin: 50px auto 0 auto;
    padding: 50px 0;
    background: #FF4101;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

ul.use li {
    width: 900px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    flex-direction: column;
}

ul.use li h4 {
    line-height: 180%;
    letter-spacing: 0.2em;
    color: #FFFFFF;
}

ul.use li p {
    width: 100%;
    margin: 30px 0 0 0;
    font-weight: 300;
    text-align: center;
    line-height: 180%;
    color: #FFFFFF;
}

ul.use li div {
    font-size: 24px;
    font-family: "Oswald","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
    font-weight: 700;
    letter-spacing: 0.2em;
    color: #FFFFFF;
    width: 300px;
    height: 50px;
    margin: 50px 0 0 0;
    border: 3px solid #FFFFFF;
    border-radius: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
}

ul.use li div span {
    font-size: 16px;
    padding: 8px 0 0 0;
}

ul.reward {
    width: 900px;
    margin: 30px auto 0 auto;
    padding: 0;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.center  {
    justify-content: center !important;
}

ul.reward li {
    width: 430px;
    margin: 30px 0 0 0;
    padding: 10px;
    background: #FFFFFF;
    border-radius: 10px;
    display: flex;
    align-items: center;
    flex-direction: column;
}

ul.reward li:nth-child(1) {margin: 0;}
ul.reward li:nth-child(2) {margin: 0;}

ul.reward li img {
    width: 100%;
    height: auto;
    border-radius: 5px 5px 0 0;
}

ul.reward li p {
    width: 95%;
    margin: 15px auto 0 auto;
    text-align: left;
    color: #333333;
}

ul.reward li div {
  font-size: 24px;
  font-family: "Oswald","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
  font-weight: 400;
  letter-spacing: 0.2em;
  color: #333333;
  width: 300px;
  /**height: 50px;**/
  margin: 15px 0 0 0;
  /**border: 3px solid #FFFFFF;
  border-radius: 25px;**/
  display: flex;
  align-items: center;
  justify-content: center;
}

ul.reward li div span {
    font-size: 16px;
    padding: 8px 0 0 0;
}

ul.reward li p.area {
    width: 95%;
    padding: 10px 0 0 0;
    border-top: 1px solid #D9D9D9;
}

ul.reward li p.area span {
  height: 20px;
  padding: 3px 6px 3px 10px;
  background: #999999;
  border-radius: 10px;
  font-weight: 600;
  letter-spacing: 0.2em;
  color: #FFFFFF;
}

ul.registration {
    width: 100%;
    margin: 100px auto 0 auto;
    padding: 0 0 100px 0;
    background: #48412C;
}

ul.registration li {
    color: #FFFFFF;
    width: 1000px;
    margin: 0 auto;
}

ul.registration li p {
    font-size: 14px;
    line-height: 180%;
    text-align: center;
    width: 100%;
    margin: 50px auto 0 auto;
}

ul.step {
    width: 1000px;
    margin: 50px auto 0 auto;
    padding: 50px 50px 50px 50px;
    background: #A6CCD2;
    display: flex;
    justify-content: space-between;
}

ul.step li {
    width: 270px;
    padding: 155px 0 0 0;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-direction: column;
}

ul.step li:nth-child(1) {background: url(../images/bg_step_01.svg) no-repeat center -18px;}
ul.step li:nth-child(2) {background: url(../images/bg_step_02.svg) no-repeat center -18px;}
ul.step li:nth-child(3) {background: url(../images/bg_step_03.svg) no-repeat center -18px;}

ul.step li p {
    font-size: 18px;
    font-weight: 300;
    font-family: "Oswald","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
    color: #48412C;
    margin: 30px 0 0 0;
}

ul.step li p.url {
    font-size: 12px;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
    color: #333333;
    margin: 15px 0 45% 0;
}

#contents ul.step li p.url a {
    font-size: 12px;
    font-weight: initial;
    text-decoration: none;
    color: #48412C;
    width: 100%;
    height: 100%;
    margin: 0;
    background: none;
    display: block;
    align-items: center;
    justify-content: center;
}

#contents a {
    font-size: 24px;
    font-weight: 700;
    text-decoration: none;
    color: #48412C;
    transition: .3s;
    width: 600px;
    height: 80px;
    margin: 50px auto 0 auto;
    border-radius: 40px;
    background: #FFFFFF url(../images/icn_right.svg) no-repeat center right 10px;
    display: flex;
    align-items: center;
    justify-content: center;
}

#contents a:hover {
    color: rgba(47, 72, 44, 0.7);
    background: rgba(255, 255, 255, 0.7) url(../images/icn_right.svg) no-repeat center right 10px;
}


/* -----------------------------------------------------------
	#pagetop
----------------------------------------------------------- */
#pagetop {
	position: fixed;
	z-index: 90;
	right: 0;
	bottom: 0;
	display: table;
	width: 80px;
	height: 80px;
	padding-right: 20px;
	padding-bottom: 20px;
}
@media only screen and (max-width: 767px) {
  #pagetop {
		display: none !important;
  }
}
#pagetop a {
	display: table-cell;
	vertical-align: middle;
	border: 3px solid #000;
	text-align: center;
	text-decoration: none;
	color: #000;
	background: #fff;
}
#pagetop a i {
	font-size: 129%;
}
#pagetop a span {
	font-family: "Oswald", sans-serif;
	font-size: 93%;
	display: block;
}

#pagetop-sp a {
	border: 3px solid #000;
	text-align: center;
	text-decoration: none;
	background: #fff;
	color: #000;
	display: block;
	padding: 10px 0;
	border-left: none;
	border-right: none;
	display: none;
}
@media only screen and (max-width: 767px) {
  #pagetop-sp a {
		display: block;
  }
}
#pagetop-sp a i {
	font-size: 129%;
}
#pagetop-sp a span {
	font-family: "Oswald", sans-serif;
	font-size: 93%;
	display: block;
}

/* -----------------------------------------------------------
	.con_topicpath
----------------------------------------------------------- */
.con_topicpath {
	border-top: 1px solid #f0ede6;
	padding: 1.2em 0 1.8em;
}
@media only screen and (max-width: 767px) {
  .con_topicpath {
		font-size: 70%;
  }
}
.con_topicpath ul li {
	display: inline;
}
.con_topicpath ul li:before {
	content: "\f105";
	font-family: "FontAwesome";
	display: inline;
	margin: 0 1em;
}
@media only screen and (max-width: 767px) {
  .con_topicpath ul li:before {
		margin: 0 0.5em;
  }
}
.con_topicpath ul li:first-child:before {
	display: none;
}
.con_topicpath ul li.top_act {
	font-weight: bold;
}
.con_topicpath ul li.top_act:before {
	font-weight: normal;
}
.con_topicpath ul li.act {
	color: #e05f0a;
}
.con_topicpath ul li.act:before {
	color: #333333;
}

/* -----------------------------------------------------------
	#footer
----------------------------------------------------------- */
#footer {
	padding: 80px 0;
	background: #252523;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer {
		padding: 60px 0;
  }
}
@media only screen and (max-width: 767px) {
  #footer {
		padding: 50px 0;
  }
}
#footer .box_footer {
	text-align: center;
}
#footer .box_footer li {
	display: inline-block;
	vertical-align: middle;
	padding: 0 2.2em;
}
@media only screen and (max-width: 1280px) {
  #footer .box_footer li {
		padding: 1em;
  }
}
@media print {
  #footer .box_footer li {
		padding: 1em;
  }
}
.ie8 #footer .box_footer li {
	padding: 1em;
}
@media only screen and (max-width: 767px) {
  #footer .box_footer li {
		padding: .5em;
		width: 50%;
  }
}
#footer .box_footer li a {
	text-decoration: none !important;
	font-size: 93%;
	color: #fff;
}
.mouse #footer .box_footer li a:hover, .touch #footer .box_footer li a.touchstart {
	text-decoration: underline !important;
}
.touch #footer .box_footer li a {
	-webkit-tap-highlight-color: transparent;
}
.touch #footer .box_footer li a.touchend {
	-moz-transition-delay: 200ms;
	-o-transition-delay: 200ms;
	-webkit-transition-delay: 200ms;
	transition-delay: 200ms;
}
#footer .box_footer li.copy {
	font-size: 86%;
	color: #fff;
}
@media only screen and (max-width: 767px) {
  #footer .box_footer li.copy {
		width: 100%;
  }
}
@media only screen and (max-width: 1280px) {
  #footer .box_footer li.logo {
		display: block;
		margin: 0 0 1em;
  }
}
@media print {
  #footer .box_footer li.logo {
		display: block;
		margin: 0 0 1em;
  }
}
.ie8 #footer .box_footer li.logo {
	display: block;
	margin: 0 0 1em;
}
@media only screen and (max-width: 767px) {
  #footer .box_footer li.logo {
		width: 100%;
  }
}
#footer .box_footer li.line {
	position: relative;
}
#footer .box_footer li.line:after {
	content: '';
	position: absolute;
	right: 0;
	top: 50%;
	height: 26px;
	margin-top: -13px;
	width: 2px;
	background: #4b4b46;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .box_footer li.line:after {
		width: 2px;
  }
}
@media only screen and (max-width: 767px) {
  #footer .box_footer li.line:after {
		width: 1px;
  }
}

/* -----------------------------------------------------------
	#js-gnav
----------------------------------------------------------- */
#js-gnav {
	position: fixed;
	z-index: 100;
	top: 0;
	right: -50%;
	width: 50%;
	height: 100%;
	visibility: hidden;
	opacity: 0;
	background: rgba(72, 65, 45, 0.85);
}
@media only screen and (max-width: 767px) {
  #js-gnav {
		right: -100%;
		width: 100%;
  }
}
#js-gnav #gnav-close {
	width: 75px;
	height: 75px;
	display: table;
	position: absolute;
	right: 0;
	top: 0;
}
@media only screen and (max-width: 767px) {
  #js-gnav #gnav-close {
		width: 70px;
		height: 70px;
  }
}
#js-gnav #gnav-close a {
	display: table-cell;
	width: 100%;
	height: 100%;
	vertical-align: middle;
	background: #252523;
	text-decoration: none;
}
#js-gnav #gnav-close a .bars {
	display: block;
	width: 30px;
	height: 30px;
	margin: 0 auto;
	position: relative;
}
@media only screen and (max-width: 767px) {
  #js-gnav #gnav-close a .bars {
		width: 20px;
		height: 20px;
  }
}
#js-gnav #gnav-close a .bars > span {
	position: absolute;
	height: 3px;
	width: 30px;
	background: #fff;
	top: 0;
	left: 0;
}
@media only screen and (max-width: 767px) {
  #js-gnav #gnav-close a .bars > span {
		width: 20px;
  }
}
#js-gnav #gnav-close a .bars > span.bar01 {
	top: 13px;
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
#js-gnav #gnav-close a .bars > span.bar02 {
	top: 13px;
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
#js-gnav #gnav-close a .en {
	font-family: "Oswald", sans-serif;
	color: #fff;
	display: block;
	text-align: center;
	margin-top: 5px;
	font-size: 13px;
}
#js-gnav #gnav-close a .jp {
	color: #fff;
	display: block;
	text-align: center;
	font-size: 13px;
}
#js-gnav #js-gnav-menu {
	width: 100%;
	position: absolute;
	z-index: 2;
	height: 100%;
	overflow: scroll;
	-webkit-overflow-scrolling: touch;
	top: 0;
	right: 0;
}
#js-gnav #js-gnav-menu .gnav-inner {
	padding-top: 90px;
	padding-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  #js-gnav #js-gnav-menu .gnav-inner {
		padding-top: 50px;
  }
}
#js-gnav #js-gnav-menu .gnav-inner .gnav-header {
	text-align: center;
	margin-bottom: 20px;
}
#js-gnav #js-gnav-menu .gnav-inner .gnav-header a {
	text-decoration: none;
	display: block;
	color: #fff !important;
}
#js-gnav #js-gnav-menu .gnav-inner .gnav-header a .add {
	margin-bottom: 15px;
}
#js-gnav #js-gnav-menu .gnav-inner .gnav-header a .logo span {
	display: block;
	font-size: 93%;
	margin-top: 10px;
}
@media only screen and (max-width: 767px) {
  #js-gnav #js-gnav-menu .gnav-inner .gnav-header a .logo img {
		width: 160px;
  }
}
#js-gnav #js-gnav-menu .gnav-inner .nav {
	width: 250px;
	margin: 0 auto;
}
#js-gnav #js-gnav-menu .gnav-inner .nav .btn_rsv a {
	display: inline-block;
	width: 100%;
	text-decoration: none !important;
	text-align: center;
	position: relative;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-ms-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
	background: #e05f0a;
	border: 1px solid #e05f0a;
	color: #fff !important;
}
#js-gnav #js-gnav-menu .gnav-inner .nav .btn_rsv a span {
	font-size: 108%;
	padding: 1.2em;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #js-gnav #js-gnav-menu .gnav-inner .nav .btn_rsv a span {
		font-size: 108%;
  }
}
@media only screen and (max-width: 767px) {
  #js-gnav #js-gnav-menu .gnav-inner .nav .btn_rsv a span {
		font-size: 100%;
  }
}
#js-gnav #js-gnav-menu .gnav-inner .nav .btn_rsv a:hover {
	background: #c75000;
	border-color: #c75000;
}
#js-gnav #js-gnav-menu .gnav-inner .nav .btn_rsv a span {
	display: block;
}
#js-gnav #js-gnav-menu .gnav-inner .nav .btn_rsv a:after {
	content: "→";
	position: absolute;
	right: 1em;
	top: 50%;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-ms-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
	-webkit-transform: translate(0, -50%);
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
}
#js-gnav #js-gnav-menu .gnav-inner .nav .btn_rsv a:hover:after {
	right: 0.5em;
}
#js-gnav #js-gnav-menu .gnav-inner .nav .btn_rsv a i {
	margin-right: 0.5em;
}
#js-gnav #js-gnav-menu .gnav-inner .nav .btn_rsv a:after {
	display: none !important;
}
#js-gnav #js-gnav-menu .gnav-inner .nav ul {
	margin-top: 10px;
}
#js-gnav #js-gnav-menu .gnav-inner .nav ul li a {
	display: block;
	padding: 10px 0;
	text-decoration: none;
	text-align: center;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-ms-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
}
#js-gnav #js-gnav-menu .gnav-inner .nav ul li a:hover {
	background: #252523;
}
#js-gnav #js-gnav-menu .gnav-inner .nav ul li a span {
	display: block;
}
#js-gnav #js-gnav-menu .gnav-inner .nav ul li a span.jp {
	color: #fff;
	font-size: 122%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #js-gnav #js-gnav-menu .gnav-inner .nav ul li a span.jp {
		font-size: 122%;
  }
}
@media only screen and (max-width: 767px) {
  #js-gnav #js-gnav-menu .gnav-inner .nav ul li a span.jp {
		font-size: 122%;
  }
}
#js-gnav #js-gnav-menu .gnav-inner .nav ul li a span.en {
	font-family: "Oswald", sans-serif;
	font-size: 93%;
	color: #e05f0a;
}
#js-gnav #js-gnav-menu .gnav-inner .gnav-footer {
	margin-top: 50px;
	text-align: center;
}
#js-gnav #js-gnav-menu .gnav-inner .gnav-footer .sns {
	margin-bottom: 50px;
}
#js-gnav #js-gnav-menu .gnav-inner .gnav-footer .sns li {
	margin: 10px;
}
#js-gnav #js-gnav-menu .gnav-inner .gnav-footer .sns li a {
	color: #fff;
	text-decoration: none;
	text-decoration: none !important;
}
.mouse #js-gnav #js-gnav-menu .gnav-inner .gnav-footer .sns li a:hover, .touch #js-gnav #js-gnav-menu .gnav-inner .gnav-footer .sns li a.touchstart {
	text-decoration: underline !important;
}
.touch #js-gnav #js-gnav-menu .gnav-inner .gnav-footer .sns li a {
	-webkit-tap-highlight-color: transparent;
}
.touch #js-gnav #js-gnav-menu .gnav-inner .gnav-footer .sns li a.touchend {
	-moz-transition-delay: 200ms;
	-o-transition-delay: 200ms;
	-webkit-transition-delay: 200ms;
	transition-delay: 200ms;
}
#js-gnav #js-gnav-menu .gnav-inner .gnav-footer .fj-hotel {
	margin-top: 30px;
	text-align: center;
}

/* -----------------------------------------------------------
	#fixnav
----------------------------------------------------------- */
#fix-nav {
	top: 0;
	right: 50%;
	position: absolute;
	z-index: 90;
	margin-right: -50%;
	z-index: 600;
}
#fix-nav.fixed {
	position: fixed;
	top: 0;
}
@media only screen and (max-width: 1280px) {
  #fix-nav {
		margin-right: 0;
		right: 0;
  }
}
@media print {
  #fix-nav {
		margin-right: 0;
		right: 0;
  }
}
.ie8 #fix-nav {
	margin-right: 0;
	right: 0;
}
@media only screen and (max-width: 767px) {
  #fix-nav {
		display: block;
  }
}
#fix-nav .wrp {
	display: table;
	float: right;
}
#fix-nav .wrp > * {
	display: table-cell;
	vertical-align: middle;
}
#fix-nav .wrp a {
	display: block;
	text-decoration: none;
	padding: 10px 20px;
	color: #fff;
	text-align: center;
}
@media only screen and (max-width: 767px) {
  #fix-nav .wrp a {
		padding: 10px 15px;
  }
}
#fix-nav .wrp a i {
	font-size: 18px;
	margin-bottom: 5px;
}
#fix-nav .wrp a span {
	display: block;
}
#fix-nav .wrp a span.en {
	font-family: "Oswald", sans-serif;
	font-size: 14px;
}
@media only screen and (max-width: 767px) {
  #fix-nav .wrp a span.en {
		font-size: 12px;
  }
}
#fix-nav .wrp a span.jp {
	font-size: 13px;
}
@media only screen and (max-width: 767px) {
  #fix-nav .wrp a span.jp {
		font-size: 10px;
  }
}
#fix-nav .wrp .rsv a {
	background: #e05f0a;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-ms-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
}
#fix-nav .wrp .rsv a:hover {
	background: #c75000;
}
@media only screen and (max-width: 767px) {
  #fix-nav .wrp .rsv a {
		padding: 10px;
  }
}
#fix-nav .wrp .menu a {
	background: #252523;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-ms-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
}
#fix-nav .wrp .menu a:hover {
	background: #252523;
}
@media only screen and (max-width: 767px) {
  #fix-nav .wrp .menu a {
		padding: 10px 17px;
  }
}

#js-overlay {
	position: fixed;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.4);
	z-index: 99;
	opacity: 0;
	visibility: hidden;
}

.is-opened-gnav {
	overflow: hidden;
	width: 100%;
	height: 100%;
}
.is-opened-gnav #js-gnav {
	visibility: inherit;
	opacity: 1;
}
.is-opened-gnav #js-overlay {
	visibility: inherit;
	opacity: 1;
}

@media only screen and (max-width: 1024px) {
  .is-opened-search {
		overflow: hidden;
		width: 100%;
		height: 100%;
  }
  .is-opened-search #js-overlay {
		visibility: inherit;
		opacity: 1;
  }
  .is-opened-search #popup-search {
		opacity: 1;
  }
}

.is-opened-search #popup-search {
	visibility: inherit;
}

/* -----------------------------------------------------------
	下層共通スタイル
----------------------------------------------------------- */
/* -----------------------------------------------------------
	テーブル
----------------------------------------------------------- */
table.tbl_primary {
	border-collapse: collapse;
	border-spacing: 0;
	border-top: 1px solid #b3b5b2;
}
table.tbl_primary tr {
	border-bottom: 1px solid #b3b5b2;
}
table.tbl_primary tr th, table.tbl_primary tr td {
	padding: 1em;
	font-size: 93%;
}

/* -----------------------------------------------------------
	.slick
----------------------------------------------------------- */
.slick-dots {
	text-align: center;
}
.slick-dots li {
	display: inline-block;
	vertical-align: middle;
	margin-left: 10px;
}
.slick-dots li button {
	cursor: pointer;
	border: 1px solid #333;
	padding: 0;
	margin: 0;
	border-radius: 50%;
	padding: 0;
	margin: 0;
	background: transparent;
	width: 15px;
	height: 15px;
	display: block;
	overflow: hidden;
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	font-size: 0;
}
.slick-dots li.slick-active button {
	background: #333;
}



@media (max-width: 767px) {
    ul.main {
        width: 95%;
        height: auto;
        /**margin: 0 auto;
        padding: 0;
        background: url(../images/bg_main.png) no-repeat center center / cover;
        display: flex;
        align-items: center;
        justify-content: center;**/
    }

    ul.main > li.info {
        /**display: flex;
        justify-content: center;
        align-items: center;**/
        height: 100px;
        /**background: #D65E13;
        line-height: 100%;**/
    }

    #contents > ul.main > li.info > a {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        margin: 10px 0 0 0;
        text-align: center;
        line-height: 130%;
        /**width: 100%;
        background: none;
        font-size: 20px;
        font-weight: 600;
        color: #FFFFFF;
        transition: .3s;**/
    }

    /**#contents > ul.main > li.info > a span {
        font-size: 16px;
        font-weight: 300;
    }

    #contents > ul.main > li.info > a:hover {
        color: #333333;
    }**/
    
    ul.main li {
        width: 100%;
        height: auto;
        padding: 40px 10px;
        /**margin: 0 auto;
        background: rgba(0, 0, 0, 0.4);
        display: flex;
        align-items: center;
        justify-content: center;**/
    }
    
    ul.main li h2 {
        font-size: 30px;
        /**font-weight: 300;
        line-height: 180%;
        text-align: center;
        color: #FFFFFF;**/
    }
    
    h3 {
        font-size: 40px;
        line-height: 120%;
        padding: 80px 0 0 0;
        /**font-family: "Oswald","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
        line-height: 100%;
        text-align: center;
        width: 95%;
        margin: 0 auto;**/
    }
    
    /**h3 span {
        color: #D65E13;
    }**/
    
    h4 {
        font-size: 20px;
        line-height: 150%;
        /**font-family: "Oswald","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
        text-align: center;
        width: 95%;
        margin: 50px auto 0 auto;
        padding: 0;**/
    }
    
    p {
        width: 90%;
        /**font-size: 14px;
        text-align: center;
        line-height: 180%;
        margin: 50px auto 0 auto;**/
    }
    
    ul.program {
        width: 90%;
        flex-direction: column;
        align-items: center;
        /**margin: 30px auto 0 auto;
        display: flex;
        justify-content: space-between;**/
    }
    
    ul.program li {
        width: 100%;
        margin: 0 0 20px 0;
        /**padding: 0 0 18px 0;
        border-radius: 10px;
        background: #FFFFFF;**/
    }
    
    /**ul li h5 {
        font-size: 18px;
        font-family: "Oswald","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
        line-height: 100%;
        text-align: center;
        margin: 20px 0 0 0;
    }**/
    
    ul li p {
        width: 85%;
        /**font-size: 14px;
        line-height: 180%;
        text-align: left;
        margin: 15px auto 0 auto;**/
    }
    
    /**ul.program li img {
        width: 100%;
        height: auto;
        border-radius: 10px 10px 0 0;
    }**/

    ul.notice {
        /** display: flex;
        flex-wrap: wrap;
        justify-content: center; **/
        align-items: center;
        flex-direction: column;
        width: 90%;
        /** margin: 50px auto 0 auto;
        padding: 25px 0 45px 0;
        border-radius: 10px;
        background: #FFFFFF;
        font-size: 20px;
        font-weight: 600;
        text-align: center; **/
    }

    ul.notice li:nth-child(1) {
        width: 90%;
        /**border-bottom: 1px solid #D65E13;**/
    }

    ul.notice li:nth-child(2) {
        /**display: flex;
        flex-direction: column;
        justify-content: space-between;
        margin: 25px 5px 0 0;**/
        width: 90%;
    }

    ul.notice li:nth-child(2) > strong {
        font-size: 22px;
        line-height: 150%;
        margin-bottom: 15px;
        /** font-weight: 600; **/
    }

    ul.notice li:nth-child(2) > p {
        /** width: 100%;
        font-size: 14px;
        font-weight: 300;
        line-height: 178%; **/
        margin: 15px 0 25px 0;
    }

    #contents > ul.notice > li:nth-child(2) > a {
        /** display: flex;
        justify-content: center;
        align-items: center;
        height: 50px;
        margin: 0 auto;
        border-radius: 25px;
        background: #D65E13 url(../images/icn_triangle_right.svg) no-repeat right 10px center;
        font-size: 14px;
        font-weight: 600;
        line-height: 100%;
        color: #FFFFFF;
        transition: .3s; **/
        width: 100%;
    }

    /** #contents > ul.notice > li:nth-child(2) > a:hover {
        background: #D65E13 url(../images/icn_triangle_right.svg) no-repeat right 7px center;
    } **/

    ul.notice li:nth-child(3) {
        width: 200px;
        margin-top: 25px;
        padding-top: 12px;
    }
    
    ul.status {
        margin: 80px auto 0 auto;
        padding: 10px 0 50px 0;
        /**width: 100%;
        background: #48412C;**/
    }
    
    /**ul.status li p {
        font-size: 14px;
        line-height: 180%;
        text-align: center;
        width: 100%;
        margin: 50px auto 0 auto;
    }**/
    
    ul.status li {
        width: 90%;
        /**color: #FFFFFF;
        margin: 0 auto;**/
    }

    /**ul.status li div.hide {
        width: 100%;
        overflow: scroll;
    }**/
    
    ul.terms {
        /**width: 1000px;**/
        width: 100%;
        margin: 30px auto 0 auto;
        background: #FFFFFF;
        border-top: 1px solid #D9D9D9;
        border-left: 1px solid #D9D9D9;
        display: flex;
        flex-wrap: wrap;
    }
    
    ul.terms li {
        font-size: 30px;
        font-family: "Oswald","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
        font-weight: 600;
        line-height: 100%;
        text-align: center;
        color: #333333;
        width: 249px;
        padding: 60px 0;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    
    ul.terms li:nth-child(1) {font-size: 20px;padding: 20px 0;}
    ul.terms li:nth-child(2) {font-size: 20px;padding: 20px 0;}
    ul.terms li:nth-child(3) {font-size: 20px;padding: 20px 0;}
    ul.terms li:nth-child(4) {font-size: 20px;padding: 20px 0;}
    
    ul.terms li span.small {
        padding: 16px 0 0 0;
        font-size: 14px;
    }
    
    ul.terms li span.thin {
        font-weight: 200;
    }
    
    ul.terms li.ttl {
        width: 10%;
        writing-mode: vertical-rl; 
        border-right: 1px solid #D9D9D9;
        border-bottom: 1px solid #D9D9D9;
    }
    
    ul.terms li.white {
        width: 30%;
        background: #F7F7F7;
        border-right: 1px solid #D9D9D9;
        border-bottom: 1px solid #D9D9D9;
    }
    
    ul.terms li.blue {
        display: flex !important;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        width: 30%;
        background: #E7F5FF;
        border-right: 1px solid #D9D9D9;
        border-bottom: 1px solid #D9D9D9;
    }
    
    ul.terms li.blue div {
        display: block !important;
    }
    
    ul.terms li.none {
        display: initial;
        padding: 45px 0;
    }
    
    ul.terms li.gold {
        width: 30%;
        background: #FFFDF2;
        border-right: 1px solid #D9D9D9;
        border-bottom: 1px solid #D9D9D9;
    }
    
    ul.terms li.direct {
        width: 100% !important;
        background: #FFFFFF;
        border-right: 1px solid #D9D9D9;
        border-bottom: 1px solid #D9D9D9;
    }
    
    ul.p-save {
        width: 85%;
        /**margin: 50px auto 0 auto;
        border-top: 1px solid #9B9B9B;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;**/
    }
    
    ul.p-save li {
        border-bottom: none;
        /**font-size: 24px;
        font-weight: 700;
        padding: 30px 0;
        display: flex;
        align-items: center;**/
    }
    
    /**ul.p-save li:nth-child(odd) {
        width: 100%;
        justify-content: center;
    }
    
    ul.p-save li:nth-child(even) {
        width: 100%;
        padding: 0 0 30px 0;
        text-align: center;
        border-bottom: 1px solid #9B9B9B;
    }**/
    
    ul.use {
        width: 90%;
        padding: 5% 0;
        /**margin: 50px auto 0 auto;
        background: #FF4101;
        display: flex;
        align-items: center;
        justify-content: center;**/
        flex-wrap: wrap;
    }
    
    ul.use li {
        width: 90%;
        margin: 30px 0 0 0;
        /**margin: 0 auto;
        display: flex;
        align-items: center;
        flex-direction: column;**/
    }
    
    /**ul.use li div {
        font-size: 24px;
        font-family: "Oswald","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
        font-weight: 700;
        letter-spacing: 0.2em;
        color: #FFFFFF;
        width: 300px;
        height: 50px;
        margin: 50px 0 0 0;
        border: 3px solid #FFFFFF;
        border-radius: 25px;
        display: flex;
        align-items: center;
        justify-content: center;
    }**/
    
    /**ul.use li div span {
        font-size: 16px;
        padding: 8px 0 0 0;
    }**/
    
    ul.reward {
        width: 100%;
        margin: 0 auto;
        /**margin: 30px auto 0 auto;
        padding: 0;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;**/
    }
    
    /**.center  {
        justify-content: center !important;
    }**/
    
    ul.reward li {
        width: 100%;
        margin: 15px 0 !important;
        /**margin: 30px 0 0 0;
        padding: 10px;
        background: #FFFFFF;
        border-radius: 10px;
        display: flex;
        align-items: center;
        flex-direction: column;**/
    }
    
    /**ul.reward li:nth-child(1) {margin: 0;}**/
    ul.reward li:nth-child(2) {margin: 30px 0 0 0;}
    
    /**ul.reward li img {
        width: 100%;
        height: auto;
        border-radius: 5px 5px 0 0;
    }**/
    
    /**ul.reward li p {
        width: 100%;
    }**/
    
    /**ul.registration {
        width: 100%;
        margin: 100px auto 0 auto;
        padding: 100px 0;
        background: #48412C;
    }**/
    
    ul.registration li {
        width: 90%;
        /**color: #FFFFFF;
        margin: 0 auto;**/
    }
    
    /**ul.registration li p {
        font-size: 14px;
        line-height: 180%;
        text-align: center;
        width: 100%;
        margin: 50px auto 0 auto;
    }**/
    
    ul.step {
        width: 90%;
        flex-direction: column;
        margin: 20px auto 0 auto;
        padding: 5% 0;
        /**background: #A6CCD2;
        display: flex;
        justify-content: space-between;**/
    }
    
    ul.step li {
        width: 80%;
        margin: 5% auto;
        padding: 100px 0 0 0;
        /**display: flex;
        align-items: center;
        justify-content: flex-end;
        flex-direction: column;**/
    }
    
    ul.step li:nth-child(1) {background: url(../images/bg_step_01.svg) no-repeat center -10px / 50%;}
    ul.step li:nth-child(2) {background: url(../images/bg_step_02.svg) no-repeat center -8px / 50%;}
    ul.step li:nth-child(3) {background: url(../images/bg_step_03.svg) no-repeat center -8px / 50%;}
    
    ul.step li p {
        margin: 15px 0 0 0;
        /**font-size: 18px;
        font-weight: 300;
        font-family: "Oswald","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
        color: #48412C;**/
    }
    
    ul.step li p.url {
        margin: 15px 0 0 0;
        /**font-size: 12px;
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
        color: #333333;**/
    }
    
    #contents a {
        width: 350px;
        font-size: 20px;
        height: 55px;
        background: #FFFFFF url(../images/icn_right.svg) no-repeat center right 10px / 40px;
        /**font-weight: 700;
        text-decoration: none;
        color: #48412C;
        transition: .3s;
        height: 80px;
        margin: 50px auto 0 auto;
        border-radius: 40px;
        display: flex;
        align-items: center;
        justify-content: center;**/
    }
    
    #contents a:hover {
        color: rgba(47, 72, 44, 0.7);
        background: rgba(255, 255, 255, 0.7) url(../images/icn_right.svg) no-repeat center right 10px;
    }
}

@media(min-width:767px){
    .sp{
        display: none !important;
    }
}

@media(max-width:768px){
    .pc{
        display: none !important;
    }
}


/* -----------------------------------------------------------
	.accordion
----------------------------------------------------------- */

@media(max-width:768px){
    ul.accordion{
		/**background-color: #35924A;**/
		/**width: 150px;**/
		/**padding: 0;**/
		/**color: #fff;**/
		/**float: left;**/
		/**margin-left:30px;**/
        color: #000000;
	}
	  
	li{
		list-style: none;
	}
	  
	ul.accordion ul{
		height: 0;
		padding: 0;
		overflow: hidden;
		transition: .5s;
		/**border-top: 1px solid #67a863;
		background-color: #5EAA6C;**/
		margin:0;
	}
	  
	ul li li{
		/**border-bottom: 1px dotted #7FBF8B;**/
		padding: 10px 0 10px 10px;
		margin-left:15px;
	}
	  
	ul:nth-of-type(1) li.active li:last-child{
		border-bottom:1px solid #67a863; 
	}
	  
	button{
		position: relative;
		border: none;
		width: 100%;
		background-color: inherit;
		/**color: #fff;**/
		cursor: pointer;
		text-align: left;
		padding: 15px 40px 15px 80px;
		font-size:1em;
        color: #000000;
        background: #FFFFFF url(../images/icn_accordion.svg) no-repeat center left 15px / 15%;
	}
	/**button:hover{
		background-color: #1A5B27;
	}**/
    button h5 {
        font-size: 1.2em !important;
        font-weight: normal;
        text-align: left !important;
        margin: 0 !important;
        padding: 0;
    }
	  
	button::before,
	button::after{
		content:"";
		position: absolute;
		top: 20px;
		width: 2.5px;
		height: 10px;
		background-color: #FF4101;
		transition: .5s;
	}
	  
	button::before{
		transform: rotate(-45deg);
		right: 35px;
	}
	  
	button::after{
		transform: rotate(45deg);
		right: 30px;
	}
	  
	li.active button::before{
		transform: rotate(-135deg);
		transition:.5s;
	}
	  
	li.active button::after{
		transform: rotate(135deg);
		transition:.5s;
	}
	  
	/**
    ul:nth-of-type(2){ background-color: #357D87; }
	ul:nth-of-type(2) ul{ background-color: #519FA5; border-top: 1px solid #5D9FA8; }
	ul:nth-of-type(2) button:hover{ background-color: #1C4B56; }
	ul:nth-of-type(2) li li{ border-bottom: 1px dotted #73BEBF; }
	ul:nth-of-type(2) li.active li:last-child{ border-bottom:1px solid #5D9FA8; }
    **/
	  
	ul.active{ overflow-y: auto; }
}


/* フローティング */

.floating-banner {
    position: fixed;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 99999;
    right: 0;
    top: 50vh;
    width: 30px;
    padding: 20px 0;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-weight: 600;
    color: #FFFFFF;
    text-decoration: none!important;
    background: #252523;
    border-radius: 10px 0 0 10px;
    transition: .6s;
}
/* /フローティング */