@charset "UTF-8";
html {scroll-behavior: smooth;}
body {
	margin: 0px; 
	padding: 0px; 
	font-size: 16px; 
	font-family: "ZenKakuGN", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, Meiryo, "メイリオ", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif!important; 
	line-height: 1; 
	-webkit-text-size-adjust: none;
	-webkit-font-smoothing: 
	antialiased; font-weight: 400; 
	position: relative; width: 100%; 
	letter-spacing: normal;
	overflow-x: hidden;
}
h2,h3,h4,h5 {line-height: 1.5;}
.lh12 {line-height: 1.2;}
.lh15 {line-height: 1.5;}
p,li,dd,dt,.lh17 {line-height: 1.7;}
.rlt {position: relative;}
.ls4 {letter-spacing: -.4em;}
.lsn {letter-spacing: normal;}
.inlb {display: inline-block; letter-spacing: normal;}
.blk {display: block;}
.w1300 {width: 100%; max-width: 1332px; padding-left: 0; padding-right: 0;}
.w1500 {width: 100%; max-width: 1520px; padding-left: 0; padding-right: 0;}
.container {width: 100%; max-width: 1200px; padding-left: 0; padding-right: 0; margin:0 auto;}
.containers {width: calc(100% - 40px); max-width: 888px; padding-left: 0; padding-right: 0;}
.bgWH {background-color: #FFF;}
.bgBL {background-color: #010c17;}
.bgGR {background-color: #5BA000;}
.bgEM {background-color: #06A59E;}
.bgBLU {background-color: #095CE7;}
.bgG-btop{background: linear-gradient(to bottom, #328AFF, #AF24FF);}
.bgG-gtob{background: linear-gradient(to bottom, #74CC00, #3983FF);}
.bgG-gtob-l{background: linear-gradient(to left, #74CC00, #3983FF);}
.bgG-otop{background: linear-gradient(to bottom, #FFAA1B, #FF24A7);}
.txtWH {color: #FFF;}
.txtGR {color: #74CC00;}
.txtGEM {color: #00CA88;}
.txtEM {color: #00CAC2;}
.txtEM-d {color: #06A59E;}
.txtSKY {color: #39B6FF;}
.txtBLU {color: #3983FF;}
.marker {
    background: linear-gradient(to right, #74CC00 0%, #00CAC2 50%, #3983FF 100%);
    background-repeat: no-repeat;
    background-position: left bottom;
    background-size: 100% 20%;
}
.serif{
	font-family: 'ShipporiMinchoB1';
}
.eng{
	font-family: 'ZCOOLQing';
}
h2,h3,h4,h5 {line-height: 1.5;}
.lh12 {line-height: 1.2;}
.lh15 {line-height: 1.5;}
p,li,dd,dt,.lh17 {line-height: 1.7;}
.rlt {position: relative;}
.ls4 {letter-spacing: -.4em;}
.lsn {letter-spacing: normal;}
.inlb {display: inline-block; letter-spacing: normal;}
.blk {display: block;}
.vtop {vertical-align: top;}
.vmid {vertical-align: middle;}
.vbtm {vertical-align: bottom;}
.flex {display: flex; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; flex-wrap: wrap; -ms-flex-wrap: wrap;}
.flexNw {flex-wrap: nowrap; -webkit-flex-wrap: nowrap; -ms-flex-wrap: nowrap;}
.flRev {flex-direction: row-reverse;}
.flCol {flex-direction: column;}
.alStart {align-items: flex-start; -webkit-box-align: start;	-ms-flex-align: start;}
.alEnd {align-items: flex-end; -webkit-box-align: end; -ms-flex-align: end;}
.alCent {align-items: center; -webkit-box-align: center; -ms-flex-align: center;}
.jcCent {justify-content: center;}
.jcSb {justify-content: space-between;}
.marCent{ margin:0 auto;}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {display:block;}

.col1 {width: calc(16.6666% - 40px);}
.col2,.box3 {width: calc(33.3333% - 40px);}
.col3 {width: calc(50% - 40px);}
.col4 {width: calc(66.6666% - 40px);}
.col5 {width: calc(83.3333% - 40px);}
.col6 {width: calc(100% - 40px);}
.box4 {width: calc(25% - 30px); margin-left: 15px; margin-right: 15px;}
.w300 {max-width: 300px; width: 100%;}
.w100 {width: 100%;}
.w50 {width: 50%;}

@media screen and (max-width: 1200px) {
	.container{
		max-width: 100%;
		box-sizing: border-box;
		padding: 0 3%;
	}
}

@media screen and (max-width: 896px) {
  .containers {width: calc(100% - 30px);}
  .mlr20,.col1,.col2,.col3,.col4,.col5,.col6,.box3,.w46,.w54 {margin-left: 15px; margin-right: 15px;}
  .mlr5 {margin-left: 0; margin-right: 0;}
  .col1 {width: calc(16.6666% - 30px);}
  .col2,.box3 {width: calc(33.3333% - 30px);}
  .col3 {width: calc(50% - 30px);}
  .col4 {width: calc(66.6666% - 30px);}
  .col5 {width: calc(83.3333% - 30px);}
  .col6 {width: calc(100% - 30px);}
}
@media screen and (max-width: 568px) {
  .col1 {width: calc(33.3333% - 30px);}
  .col2,.col3,.col4,.col5,.col6,.box3,.w46,.w54 {width: calc(100% - 30px);}
  .box4 {width: calc(50% - 7.5px); margin-left: 0; margin-right: 0;}
}
.objFit img {width: 100%; height: 100%; object-fit: cover; object-position: 50% 50%; font-family: 'object-fit: cover;';}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {display:block;}

nav ul {list-style:none;}

blockquote, q {quotes:none;}

blockquote:before, blockquote:after,
q:before, q:after {content:'';content:none;}

a {margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent;}

table {border-collapse:collapse;border-spacing:0;}

hr {display:block;height:1px;border:0; border-top:1px solid #cccccc;margin:1em 0;padding:0;}

input, select {vertical-align:middle;}

ol, ul {list-style: none;}

/* 画像 */
.alignleft	{float: left; margin-right: 20px; margin-bottom: 20px;}
.alignright	{float: right; margin-left: 20px; margin-bottom: 20px;}
.aligncenter {clear: both; display: block; margin: 25px auto;}

.highlight a:hover *{filter: alpha(opacity=75); -moz-opacity:0.75; opacity:0.75;}
.cf:after {content: "."; display: block; height: 0; clear: both; visibility: hidden;}  
.cf {display: inline-table; overflow: hidden;}  
/* Hides from IE-mac \*/  
* html .cf {height: 1%;}  
.cf {display: block;}  
/* End hide from IE-mac */  
.clear {clear: both;}
img {font-size:0;line-height:0;}
img {max-width: 100%;height: auto; width: /**/; height: auto;border: none;vertical-align: bottom;}
img.miniimage {display: none;}
@media screen and (min-width: 896px) {
 img.spimage {display: none;} /* miniを表示 */
 img.bigimage  {display: block;} /* bigを表示 */
}
@media screen and (max-width: 896px) {
 img.spimage {display: block;} /* miniを表示 */
 img.bigimage  {display: none;}  /* bigを非表示 */
}
strong {font-weight: normal;}
.txtCent {text-align:center;}
.txtRight {text-align:right;}
.txtLeft {text-align: left!important;}
.txt400 {font-weight: 400;}
.txt500 {font-weight: 500;}
.txt600 {font-weight: 600;}
.txt700 {font-weight: 700;}
.txt900 {font-weight: 900;}
.txtRD {color: #CC0000;}
.txt12 {font-size: 12px;}
.txt14 {font-size: 14px;}
.txt16 {font-size: 16px;}
.txt18 {font-size: 18px;}
.txt20 {font-size: 20px;}
.txt24 {font-size: 24px;}
.txt26 {font-size: 26px;}
.txt28 {font-size: 28px;}
.txt30 {font-size: 30px;}
.txt32 {font-size: 32px;}
.txt36 {font-size: 36px;}
.txt40 {font-size: 40px;}
.txt48 {font-size: 48px;}
.txt50 {font-size: 50px;}
.txt60 {font-size: 60px;}
.txt80 {font-size: 80px;}
.txt100 {font-size: 100px;}
.txt120 {font-size: 120px;}
.txt160 {font-size: 160px;}
.mb5 {margin-bottom: 5px;}
.mb15 {margin-bottom: 15px;}
.mb10 {margin-bottom: 10px;}
.mb20 {margin-bottom: 20px;}
.mb30 {margin-bottom: 30px;}
.mb40 {margin-bottom: 40px;}
.mb50 {margin-bottom: 50px;}
.mb60 {margin-bottom: 60px;}
.mb80 {margin-bottom: 80px;}
.mb90 {margin-bottom: 90px;}
.mb100 {margin-bottom: 100px;}
.mt20 {margin-top: 10px;}
.mt20 {margin-top: 20px;}
.mt30 {margin-top: 30px;}
.mt40 {margin-top: 40px;}
.mt50 {margin-top: 50px;}
.mt60 {margin-top: 60px;}
.mt80 {margin-top: 80px;}
.mt100 {margin-top: 100px;}
.pt10 {padding-top: 10px;}
.pt20 {padding-top: 20px;}
.pt30 {padding-top: 30px;}
.pt40 {padding-top: 40px;}
.pt50 {padding-top: 50px;}
.pt60 {padding-top: 60px;}
.pt70 {padding-top: 70px;}
.pt80 {padding-top: 80px;}
.pt100 {padding-top: 100px;}
.pb10 {padding-bottom: 10px;}
.pb20 {padding-bottom: 20px;}
.pb30 {padding-bottom: 30px;}
.pb40 {padding-bottom: 40px;}
.pb50 {padding-bottom: 50px;}
.pb60 {padding-bottom: 60px;}
.pb70 {padding-bottom: 70px;}
.pb80 {padding-bottom: 80px;}
.pb100 {padding-bottom: 100px;}
.pb120 {padding-bottom: 120px;}
.ptb80 {padding: 80px 0 50px;}
.ptb40 {padding: 40px 0;}
@media screen and (min-width: 769px){
	.pc-tab_in{display: inline;}
	.pc-sp_in{display: inline;}
	.tab_in{display: none;}
	.sp_in{display: none;}
}
@media screen and (max-width: 768px){	
	.pc-tab_in{display: none;}
	.pc-sp_in{display: inline;}
	.tab_in{display: inline;}
	.sp_in{display: none;}
	.txt16 {font-size: 14px;}
	.txt18,.txt20 {font-size:16px;}
	.txt24,.txt26,.txt28 {font-size:20px;}
	.txt30,.txt32 {font-size:22px;}
	.txt36,.txt40 {font-size:24px;}
	.txt48 {font-size: 28px;}
	.txt50,.txt60 {font-size:30px;}
	.txt80 {font-size:40px;}
	.txt120 {font-size: 60px;}
	.txt160 {font-size: 80px;}
	.mb40 {margin-bottom: 30px;}
	.mb50 {margin-bottom: 30px;}
	.mb60 {margin-bottom: 40px;}
	.mb80,.mb90,.mb100 {margin-bottom: 50px;}
	.pt40 {padding-top: 30px;}
	.pt50 {padding-top: 30px;}
	.pt60 {padding-top: 40px;}
	.pt70 {padding-top: 40px;}
	.pt80,.pt100 {padding-top: 50px;}
	.pb40 {padding-bottom: 30px;}
	.pb50 {padding-bottom: 30px;}
	.pb60 {padding-bottom: 40px;}
	.pb70 {padding-bottom: 40px;}
	.pb80 {padding-bottom: 50px;}
	.pb100 {padding-bottom: 50px;}
    .pb120 {padding-bottom: 60px;}
}

.alignright {width: 40%; margin: 0 0 20px 30px; float: right;}
.alignleft {width: 40%; margin: 0 30px 20px 0; float: left;}
.alignright2 {width: 30%; margin: 0 0 10px 20px; float: right;}
.aligncenter {width: 100%; width: 720px; margin: 0 auto 20px;}
@media screen and (max-width: 896px) {
	.alignright {width: 35%; margin: 0 0 20px 30px; float: right;}
	.alignleft {width: 35%; margin: 0 30px 20px 0; float: left;}
}
@media screen and (max-width: 896px) {
	.alignright {width: 100%; margin: 0 auto 20px; float: none;}
	.alignleft {width: 100%; margin: 0 auto 20px; float: none;}
	.alignright2 {width: 35%; margin: 0 0 10px 20px; float: right;}
}

a {color: #222; text-decoration: none; transition: .3s;}
a.ubdr {text-decoration: underline;}

@media screen and (max-width: 540px) {
	.pc-tab_in{display: none;}
	.pc-sp_in{display: none;}
	.tab_in{display: inline;}
	.sp_in{display: inline;}
}