@charset "UTF-8";
@import url(base.css);
.colLPurple {
  color: #d0daf5;
}

.colLBlue {
  color: #e7f3ff;
}

.colBlue {
  color: #1c3888;
}

.colOrange {
  color: #ff7e00;
}

.sizeL {
  font-size: 5vw;
}

.sizeM {
  font-size: 4.5vw;
}

.sizeN {
  font-size: 4vw;
}

.sizeS {
  font-size: 3.5vw;
}

.sizeSS {
  font-size: 3vw;
}

.fit {
  width: 100%;
  height: auto;
}

a.blank:after {
  content: "";
  display: inline-block;
  width: 3.4vw;
  height: 3.4vw;
  margin-left: 3px;
  background: url(../img/external_link.png) right center no-repeat;
  background-size: 3.4vw auto;
}

.spBtn {
  display: block;
  text-align: center;
  padding: 3vw;
  border-radius: 3px;
  background-color: #a8a8a8;
  color: #FFF !important;
  margin: 2vw 0;
}

.spBtnW {
  display: block;
  text-align: center;
  padding: 3vw;
  border-radius: 3px;
  background-color: #FFF;
  color: #a8a8a8;
  margin: 2vw 0;
  font-weight: bold;
}

.moreLink {
  text-align: right;
  padding: 3vw;
}
.moreLink a {
  background: url("../img/arrow.png") left center no-repeat;
  background-size: 3vw auto;
  padding-left: 3.4vw;
}

/*-------------------------------------------------
	++ BASE
-------------------------------------------------*/
body {
  font-size: 4vw;
}

.pc {
  display: none;
}

img,
img.sp {
  /*display: block;*/
  display: inline-block;
}

#container {
  margin: 0 auto;
  text-align: center;
  position: relative;
  min-width: 100%;
  overflow-x: hidden;
}

#contents {
  padding-top: 3vw;
}

.cInner {
  display: block;
  clear: both;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  position: relative;
}

/*-------------------------------------------------
	++ HEAD
-------------------------------------------------*/
#header {
  width: 100%;
  position: relative;
  z-index: 999;
}
#header #mainHeader {
  background: url(../img/sp/sp_header_bg.png) center 7vw no-repeat / 100% auto;
  height: 26vw;
}
#header #mainHeader h1 {
  width: 50%;
  margin: 1vw 0 0 2vw;
}
#header #mainHeader #desc {
}

#header #mainHeader .language {
  position: absolute;
  top: 5px;
  right: 5px;
}
#header #mainHeader .language ul {
	letter-spacing:-.4em;
}
#header #mainHeader .language ul li {
	display:inline-block;
	letter-spacing: normal;
}
#header #mainHeader .language ul li span,
#header #mainHeader .language ul li a {
	padding:4px 10px;
	font-size:3.5vw;
	color:#FFF;
}
#header #mainHeader .language ul li span {
	background-color:#FC2D2A;
}
#header #mainHeader .language ul li a {
	background-color:#676767;
}
#header #mainHeader .language ul li:nth-of-type(1) a,
#header #mainHeader .language ul li:nth-of-type(1) span {
	border-radius:10px 0 0 10px;
}
#header #mainHeader .language ul li:nth-last-of-type(1) a,
#header #mainHeader .language ul li:nth-last-of-type(1) span {
	border-radius:  0 10px 10px 0;
}
#header #menu ul {
  background: #FFF;
}
#header #menu ul li {
  width: 50%;
  background: #a8a8a8;
  padding: 2vw;
  position: relative;
  border: 2px solid #FFF;
  float: left;
}
#header #menu ul li a {
  display: block;
  *zoom: 1;
}
#header #menu ul li a:before {
  content: " ";
  display: table;
}
#header #menu ul li a:after {
  content: " ";
  display: table;
  clear: both;
}
#header #menu ul li a .icon {
  display: block;
  float: left;
  width: 18%;
  height: 18%;
  background-color: #FFF;
  border-radius: 2px;
  padding: 1vw;
}
#header #menu ul li a .icon img {
  width: 100%;
  height: auto;
}
#header #menu ul li a .text {
  display: block;
  width: 82%;
  float: left;
  color: #FFF;
  text-align: center;
  font-size: 3.5vw;
  padding-top: 2.2vw;
  line-height: 1.2;
}
#header #menu ul li a .text.line2 {
  padding-top: 0;
}

.mainSlider {
  position: relative;
}
.mainSlider .mainCopy {
  position: absolute;
  top: 25%;
  left: 10vw;
  z-index: 1;
  width: 60%;
}

/*-------------------------------------------------
	++ COMMON
-------------------------------------------------*/
.main {
  text-align: left;
}

/*-------------------------------------------------
	++ HOME
-------------------------------------------------*/
.secBlock {
  margin-bottom: 5vw;
}
.secBlock h2 {
  color: #e40000;
  border-bottom: 3px solid #e40000;
  font-size: 5vw;
  margin-bottom: 3vw;
  padding: 0 3vw;
}
.secBlock .secBox {
  padding: 0 5vw;
  margin-bottom: 3vw;
}
.secBlock .secBox h3 {
  background-color: #ffd2d2;
  color: #e40000;
  font-size: 4vw;
  padding: 2vw;
  margin-bottom: 3vw;
}
.secBlock .secBox h4 {
  border:1px solid #e40000;
  color: #e40000;
  font-size: 4vw;
  padding: 2vw;
  margin-bottom: 3vw;
}
.secBlock .secBox p {
	margin-bottom:2vw;
}
/*箇条書きマーク用*/
.ul_disc{
  list-style: inside;
	list-style-type: disc;
	margin-left: 15px;
}

.infoList li {
  border-bottom: 1px dotted #d1d1d1;
  position: relative;
  display: block;
  padding: 2vw 3vw 2vw 5vw;
  background: url("../img/arrow.png") 2vw center no-repeat;
  background-size: 2vw auto;
}
.infoList li a img {
  display: inline-block;
  width: 4vw;
  height: auto;
}
img.pdf {
  display: inline-block;
  width: 4vw;
  height: auto;
}
.infoList li.new {
  padding-left: 17vw;
}
.infoList li.new:before {
  content: "NEW";
  position: absolute;
  top: 3vw;
  left: 6vw;
  background-color: #FC2E2A;
  color: #FFF;
  font-size: 3vw;
  padding: 0 1vw;
}

.block2Box {
  padding: 0 3vw;
}
.block2Box li {
  width: 50%;
  float: left;
  font-size: 3.5vw;
  padding: 0 2vw 2vw 2vw;
}
.block2Box li:nth-of-type(2n) {
  margin-right: 0;
}

.block3Box {
  padding: 0 3vw;
}
.block3Box li {
  width: 50%;
  float: left;
  font-size: 3.5vw;
  padding: 0 2vw 2vw 2vw;
}
.block3Box li:nth-of-type(2n) {
  margin-right: 0;
}

.block4Box {
  padding: 0 1vw;
}
.block4Box li {
  width: 50%;
  float: left;
  font-size: 3.0vw;
  padding: 0 2vw 2vw 2vw;
}
.block4Box li:nth-of-type(2n) {
  margin-right: 0;
}

.textBlock {
  padding: 3vw;
}

.youtube {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
.youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.definList {
  margin-bottom: 3vw;
  margin-left: 2vw;
}
.definList dt {
  font-weight: bold;
  margin-top: 3vw;
}
.definList dt:before {
  content: "■";
  color: #e40000;
  padding:1vw;
}
.definList dd {
  text-indent: 2.4vw;
}

.transTbl {
  margin-bottom: 3vw;
  width: 100%;
  border-collapse: collapse;
}
.transTbl th, .transTbl td {
  padding: 1w;
  vertical-align: top;
  font-weight: normal;
}
.transTbl th {
  white-space: nowrap;
}

.baseTbl {
  margin-bottom: 3vw;
  width: 100%;
  border-collapse: collapse;
}
.baseTbl th, .baseTbl td {
  border: 1px solid #CCC;
  padding: 1vw;
  vertical-align: top;
}
.baseTbl thead {
  background-color: #e7f3ff;
}
.baseTbl thead th {
  background-color: #FFEB9E;
  text-align: center;
  font-weight: normal;
}
.baseTbl tbody th {
  background-color: #e7f3ff;
  font-weight: normal;
  white-space: nowrap;
}

.lt th{
	border:none;
	padding:0.5vw 1vw 0.2vw 2vw;
  text-align:center;
}
.lt td{
	border:none;
	padding:0.5vw 1vw 0.2vw 2vw;
}


/*-------------------------------------------------
	++ SIDEBAR
-------------------------------------------------*/
.sideBnr {
  margin-bottom: 3vw;
  padding: 0 5vw;
}
.sideBnr li {
  width: 50%;
  float: left;
  padding: 1vw;
}

/*-------------------------------------------------
	++ FOOTER
-------------------------------------------------*/
#pageTop {
  position: fixed;
  bottom: 22vw;
  right: 3vw;
  width: 30vw;
  height: 14vw;
}
#pageTop a {
  width: 14vw;
  display: inline-block;
  margin: 0 0.5vw;
}

body.home #pageTop {
  width: 15vw;
}

#footer {
  position: relative;
}
#footer .footerContents .footerLink ul {
  border-top: 1px solid #E5E5E5;
}
#footer .footerContents .footerLink ul li {
  display: block;
  border-bottom: 1px solid #E5E5E5;
  font-size: 3.5vw;
  text-align: left;
}
#footer .footerContents .footerLink ul li a {
  display: block;
  padding: 3vw;
  color: #333;
  background: url("../img/arrow_g.png") right 3vw center no-repeat;
  background-size: 2vw auto;
}
#footer .footerCredit {
  background: #a8a8a8;
  color: #FFF;
  padding: 3vw 0;
}
#footer .footerCredit .companyInfo .footerLogo {
  display: block;
  width: 50%;
  margin: 0 auto;
  text-align: center;
}
#footer .footerCredit .companyInfo .companyAdd {
  text-align: left;
  padding: 3vw;
  font-size: 3.5vw;
}
#footer .footerCredit .aboutLink {
  padding: 3vw;
}
#footer .footerCredit .aboutLink ul li {
  float: right;
  display: block;
  width: 49%;
  margin-right: 2%;
}
#footer .footerCredit .aboutLink ul li:nth-of-type(odd) {
  margin-right: 0;
}
#footer .footerCredit .aboutLink ul li a {
  display: block;
  background: #FFF url("../img/arrow_b.png") 3vw center no-repeat;
  background-size: 2vw auto;
  padding: 3vw 1vw 3vw 5vw;
  border-radius: 3px;
  color: #a8a8a8;
}

/*# sourceMappingURL=style_sp.css.map */

/*----------------以下、改修前画面（2018年ごろ）のｃｓｓからの一部引用-----------------*/
.gcAlbumBlockBR {
    width: 50%;
    float: right;
    font-size: 3.5vw;
    padding: 0 2vw 2vw 2vw;
    /*margin: 10px 5px 15px 20px;*/
    text-align: center;
}

.gcAlbumBlock em,
.gcAlbumBlockBR em,
.gcAlbumBlockBR2 em{
  border:1px solid #e40000;
  color: #e40000;
  font-size: 100%;
  padding: 1vw;
  margin-bottom: 1vw;
  font-style:normal;
	display:inline-block;
	line-height:1.2;
  
}

.gcAlbumBlock img,
.gcAlbumBlockBR img,
.gcAlbumBlockBR2 img{
 margin: 1vw 0vw 1vw 0vw;
}

#contPage .iR{
	text-align:right;
}
#contPage .iL{
	text-align:left;
}
#contPage .iC{
	text-align:center;
}

/*規約*/
.constText{
	display:block;
	margin-left:3.8em;
	text-indent:-3.0em;
}

.en .constText{
	display:block;
	margin-left:2vw;
	text-indent:0;
}

/*規約 英語ページ*/
.constTexte{
	display:block;
	margin-left:2vw;
}

.en .constTexte{
	display:block;
	margin-left:24px;
	text-indent:0;
}
/*-----インデント-----*/
span.indent05,
span.indent1,
span.indent15,
span.indent2,
span.indent25,
span.indent3,
span.indent35,
span.indent4,
span.indent45,
span.indent5,
span.indent55,
span.indent6,
span.indent65,
span.indent7,
span.indent75,
span.indent8,
span.indent85,
span.indentNO
{
display:block;
}

.indent05 { margin-left: 0.5em; text-indent:-0.5em;}

.indent1
{
margin-left: 1em;
text-indent: -1em;
}

.indent15 { margin-left: 1.5em; text-indent:-1.5em;}

.indent2
{
margin-left: 2em;
text-indent: -2em;
}

.indent25 { margin-left: 2.5em; text-indent:-2.5em;}

.indent3
{
margin-left: 3em;
text-indent: -3em;
}

.indent35 { margin-left: 3.5em; text-indent:-3.5em;}

.indent4 { margin-left: 4em; text-indent:-4em;}
.indent45 { margin-left: 4.5em; text-indent:-4.5em;}
.indent5 { margin-left: 5em; text-indent:-5em;}
.indent55 { margin-left: 5.5em; text-indent:-5.5em;}
.indent6 { margin-left: 6em; text-indent:-6em;}
.indent65 { margin-left: 6.5em; text-indent:-6.5em;}
.indent7 { margin-left: 7em; text-indent:-7em;}
.indent75 { margin-left: 7.5em; text-indent:-7.5em;}
.indent8 { margin-left: 8em; text-indent:-8em;}
.indent85 { margin-left: 8.5em; text-indent:-8.5em;}

.indentNO { margin-left: 2vw; text-indent:-2vw;}

#contPage em,
#contPage strong,
#contPage em span,
#contPage strong span,
#contPage h2 span,
#contPage h3 span,
#contPage h4 span,
#contPage h5 span,
#contPage h6 span{
  font-style:normal;
}
.mar1em{
	margin-left:1em;
}

.mar2em{
	margin-left:2em;
}

.mar3em{
	margin-left:3em;
}

span.mar1em, span.mar2em, span.mar3em{
	display:block;
}