@charset "UTF-8";

/*=========================================================================
//
// Base
//
==========================================================================*/
/*-------------------------------------------------------------------------
 normalize
--------------------------------------------------------------------------*/
/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */progress,sub,sup{vertical-align:baseline}button,hr,input{overflow:visible}[type=checkbox],[type=radio],legend{box-sizing:border-box;padding:0}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}svg:not(:root){overflow:hidden}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}button,input,select,textarea{font:inherit;margin:0}optgroup{font-weight:700}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:ButtonText dotted 1px}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{color:inherit;display:table;max-width:100%;white-space:normal}textarea{overflow:auto}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-input-placeholder{color:inherit;opacity:.54}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}

/*-------------------------------------------------------------------------
 base setting
--------------------------------------------------------------------------*/
html {
	box-sizing: border-box;
}
*, *::before, *::after {
	box-sizing: inherit;
}

body, input, textarea, select, option, button {
  background: #fff;
  font-family:-apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI","ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;
  line-height: 1.5;
  color: #000;
  font-size: 16px;
}
body {
  position: relative;
  word-wrap: break-word;
  overflow-wrap: break-word;
}
@media (max-width: 767px) {
  body {
    min-width: inherit;
    min-width: auto;
    line-height: 1.6;
    font-size: 14px;
  }
  body, input, textarea, select, option, button{
	  font-size: 14px;
  }
}

a {
  color: #004480;
  text-decoration: none;
  outline: none;
  -webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
a[href]:not([class]) {
  color: #004480;
  text-decoration: underline;
}
a:link,
a:visited {
  color: #004480;
  text-decoration: underline;
}
a:active,
a:hover {
  color: #aaa;
}
a[href^="http"]:empty::before {
  content: attr(href);
}

input[type="text"],
input[type="search"],
input[type="password"],
input[type="tel"],
input[type="url"],
input[type="email"],
input[type="number"],
input[type="datetime"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"] {
  box-sizing: border-box;
  padding: 5px;
  -webkit-appearance: none;
  border-radius: 0;
  border: 1px solid #d2d2d2;
}
input[type="radio"],
input[type="checkbox"] {
  margin-right: 5px;
}
textarea {
  width: 100%;
  resize: vertical;
  padding: 5px;
  border: 1px solid #d2d2d2;
  box-sizing: border-box;
}
/*
select {
  padding: 5px;
  border: 1px solid #d2d2d2;
  box-sizing: border-box;
}
*/

button {
  display: block;
  margin: 0;
  padding: 0;
  background: none;
  border: 0;
  cursor: pointer;
}

label {
  display: block;
  cursor: pointer;
}

p {
  margin-top: 1.2em;
  word-wrap: break-word;
}
p:first-child {
	margin-top: 0;
}
@media (max-width: 767px) {
  p {
    margin-top: .6em;
  }
}

ul, ol, li {
  margin: 0;
  padding: 0;
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* image
----------------------------------------------------------- */
a img,
img {
	border: 0;
	-ms-interpolation-mode: bicubic;
	vertical-align: bottom;
}
.img-responsive{
	display: block;
	margin: 0 auto;
	width: 100%;
	height: auto;
}
.img-max{
	display: block;
	margin: 0 auto;
	max-width: 100%;
	height: auto;
}
.img-max2{
	display: block;
	margin: 0;
	max-width: 100%;
	height: auto;
}


/*=========================================================================
//
// Utility
//
==========================================================================*/
/* clearfix
----------------------------------------------------------- */
.cf { zoom: 1; }
.cf:after { content: ""; display: block; clear: both; }

/* display
----------------------------------------------------------- */
.text-left { text-align: left; }
.text-right { text-align: right; }
.text-center { text-align: center; }

.left { float: left; }
.right { float: right; }

.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em;
}
.alignright {
  display: inline;
  float: right;
  margin-left: 1.5em;
}
.aligncenter {
  clear: both;
  display: block;
  margin: 0 auto;
}

.Enable { display: inline-block; }
.Disable { display: none; }
.pcDisable { display: none !important; }

.display_pc{ display: none; }
.display_sp{ display: none; }


/* margin, padding
----------------------------------------------------------- */
.mt-0 { margin-top: 0 !important; }
.mt-5 { margin-top: 5px !important; }
.mt-10 { margin-top: 10px !important; }
.mt-15 { margin-top: 15px !important; }
.mt-20 { margin-top: 20px !important; }
.mt-25 { margin-top: 25px !important; }
.mt-30 { margin-top: 30px !important; }
.mt-35 { margin-top: 35px !important; }
.mt-40 { margin-top: 40px !important; }
.mt-45 { margin-top: 45px !important; }
.mt-50 { margin-top: 50px !important; }

.mb-0 { margin-bottom: 0 !important; }
.mb-5 { margin-bottom: 5px !important; }
.mb-10 { margin-bottom: 10px !important; }
.mb-15 { margin-bottom: 15px !important; }
.mb-20 { margin-bottom: 20px !important; }
.mb-25 { margin-bottom: 25px !important; }
.mb-30 { margin-bottom: 30px !important; }
.mb-35 { margin-bottom: 35px !important; }
.mb-40 { margin-bottom: 40px !important; }
.mb-45 { margin-bottom: 45px !important; }
.mb-50 { margin-bottom: 50px !important; }

.ml-0 { margin-left: 0 !important; }
.ml-5 { margin-left: 5px !important; }
.ml-10 { margin-left: 10px !important; }
.ml-15 { margin-left: 15px !important; }
.ml-20 { margin-left: 20px !important; }
.ml-25 { margin-left: 25px !important; }
.ml-30 { margin-left: 30px !important; }
.ml-35 { margin-left: 35px !important; }
.ml-40 { margin-left: 40px !important; }
.ml-45 {  margin-left: 45px !important; }
.ml-50 { margin-left: 50px !important; }

.pt-0 { padding-top: 0 !important; }
.pt-5 { padding-top: 5px !important; }
.pt-10 { padding-top: 10px !important; }
.pt-15 { padding-top: 15px !important; }
.pt-20 { padding-top: 20px !important; }
.pt-25 { padding-top: 25px !important; }
.pt-30 { padding-top: 30px !important; }
.pt-35 { padding-top: 35px !important; }
.pt-40 { padding-top: 40px !important; }
.pt-45 { padding-top: 45px !important; }
.pt-50 { padding-top: 50px !important; }

/* width
--------------------------------------------------------*/
.width-5 { width: 5% !important; }
.width-10 { width: 10% !important; }
.width-15 { width: 15% !important; }
.width-20 { width: 20% !important; }
.width-25 { width: 25% !important; }
.width-30 { width: 30% !important; }
.width-35 { width: 35% !important; }
.width-40 { width: 40% !important; }
.width-45 {  width: 45% !important; }
.width-50 { width: 50% !important; }
.width-55 { width: 55% !important; }
.width-60 { width: 60% !important; }
.width-65 { width: 65% !important; }
.width-70 { width: 70% !important; }
.width-75 { width: 75% !important; }
.width-80 { width: 80% !important; }
.width-85 { width: 85% !important; }
.width-90 { width: 90% !important; }
.width-95 { width: 95% !important; }
.width-100 { width: 100% !important; }
.width-33 { width: 33% !important; }
.width-full { width: 100% !important; }

/* text
--------------------------------------------------------*/
.xxxxxlarge { font-size: 24px; }
.xxxxlarge {  font-size: 22px; }
.xxxlarge {  font-size: 20px; }
.xxlarge {  font-size: 18px; }
.xlarge { font-size: 16px; }

.large { font-size: 15px; }
.medium {  font-size: 14px; }
.small {  font-size: 13px; }

.xsmall { font-size: 12px; }
.xxsmall {  font-size: 11px; }
.xxxsmall {  font-size: 10px; }
.xxxxsmall { font-size: 9px; }

.bold {  font-weight: bold !important; }
.normal {  font-weight: normal !important; }

.text-def { color: #000 !important; }
.text-att { color: #c00 !important; }
.text-note { color: #666 !important; }

.note {
  margin-top: .5em;
  padding-left: 1em;
  text-indent: -1em;
  font-size: 12px;
}

/* hr
--------------------------------------------------------*/
hr {
  border: 0;
  border-top: 1px solid #ccc;
  /* margin: 40px 0; */
  margin: 0;
  padding: 0;
}


/*=========================================================================
//
// Layout
//
==========================================================================*/
/*
 header
--------------------------------------------------------------------------*/
.l-header{
	position: relative;
	background: rgb(0,60,113);
	background: linear-gradient(90deg, rgba(0,60,113,1) 0%, rgba(0,151,224,1) 100%);
	position: relative;
}
/*
.l-header:before{
	content: "";
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  left: 0;
  background: rgba(0, 0, 0, .6);
}
*/
.l-header .logo{
	width: 100px;
	margin: 0 auto;
	padding: 2em 0;
}
@media (min-width: 1620px) {

}
@media (max-width: 767px) {
	.l-header{
		padding: 0;
		height: inherit;
	}
	.l-header .logo{
		width: 80px;
		padding: 1.5em 0;
	}
}
@media (max-width: 480px) {
	.l-header{
		padding: 0;
	}
}

/*
 footer
--------------------------------------------------------------------------*/
.l-footer{
	padding: 30px 0;
	background: rgb(0,60,113);
	background: linear-gradient(90deg, rgba(0,60,113,1) 0%, rgba(0,151,224,1) 100%);
	text-align: center;
	color: #fff;
}
@media (max-width: 767px) {
	.l-footer{

	}
}

/*
 main
--------------------------------------------------------------------------*/
.l-main{
	padding: 0 0 30px;
}
@media (max-width: 767px) {
	.l-main{

	}
}

/*
 sub
--------------------------------------------------------------------------*/
.l-sub{

}
@media (max-width: 767px) {
	.l-sub{

	}
}

/*
 container
--------------------------------------------------------------------------*/
.l-container {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 15px;
  position: relative;
}
.l-header .l-container {
	max-width: 100%;
	position: relative;
	padding: 0;
}
@media (min-width: 1920px) {
	.l-header .l-container {
		max-width: 96%;
	}
}



.l-container-80 {
  width: 80% !important;
  margin-left: auto;
  margin-right: auto;
}
.l-container-60 {
  width: 60% !important;
  margin-left: auto;
  margin-right: auto;
}

@media (max-width: 767px) {
  .l-container {
    max-width: 100%;
    padding: 0 15px;
    box-sizing: border-box;
  }
  .l-container-80,
  .l-container-60 {
    width: 100% !important;
  }
}

/*
 grid
--------------------------------------------------------------------------*/
/*	SELF CLEARING FLOATS - CLEARFIX METHOD */
.l-container:after,
.row:after,
.col:after,
.clr:after,
.gutters:after {
	content: "";
	display: table;
	clear: both;
}

/* DEFAULT ROW STYLES
	Set bottom padding according to preference */
.row { padding-bottom: 0; }

/* DEFAULT COLUMN STYLES */
.col {
	display: block;
	float: left;
	width: 100%;
}

@media ( min-width : 768px ) {
	.gutters .col { margin-left: 2%; }
	.gutters .col:first-child { margin-left: 0; }
}

/*	COLUMN WIDTH ON DISPLAYS +768px
	You might need to play with media queries here to suite your design. */
@media ( min-width : 768px ) {
.span_1 { width: 4.16666666667%; }
.span_2 { width: 8.33333333333%; }
.span_3 { width:12.5%; }
.span_4 { width: 16.6666666667%; }
.span_5 { width: 20.8333333333%; }
.span_6 { width: 25%; }
.span_7 { width: 29.1666666667%; }
.span_8 { width: 33.3333333333%; }
.span_9 { width: 37.5%; }
.span_10 { width: 41.6666666667%; }
.span_11 { width: 45.8333333333%; }
.span_12 { width: 50%; }
.span_13 { width: 54.1666666667%; }
.span_14 { width: 58.3333333333%; }
.span_15 { width: 62.5%; }
.span_16 { width: 66.6666666667%; }
.span_17 { width: 70.8333333333%; }
.span_18 { width: 75%; }
.span_19 { width: 79.1666666667%; }
.span_20 { width: 83.3333333333%; }
.span_21 { width: 87.5%; }
.span_22 { width: 91.6666666667%; }
.span_23 { width: 95.8333333333%; }
.span_24 { width: 100%; }

.gutters .span_1 { width: 2.25%; }
.gutters .span_2 { width: 6.5%; }
.gutters .span_3 { width: 10.75%; }
.gutters .span_4 { width: 15.0%; }
.gutters .span_5 { width: 19.25%; }
.gutters .span_6 { width: 23.5%; }
.gutters .span_7 { width: 27.75%; }
.gutters .span_8 { width: 32.0%; }
.gutters .span_9 { width: 36.25%; }
.gutters .span_10 { width: 40.5%; }
.gutters .span_11 { width: 44.75%; }
.gutters .span_12 { width: 49.0%; }
.gutters .span_13 { width: 53.25%; }
.gutters .span_14 { width: 57.5%; }
.gutters .span_15 { width: 61.75%; }
.gutters .span_16 { width: 66.0%; }
.gutters .span_17 { width: 70.25%; }
.gutters .span_18 { width: 74.5%; }
.gutters .span_19 { width: 78.75%; }
.gutters .span_20 { width: 83.0%; }
.gutters .span_21 { width: 87.25%; }
.gutters .span_22 { width: 91.5%; }
.gutters .span_23 { width: 95.75%; }
.gutters .span_24 { width: 100%; }
}



/*=========================================================================
//
// Module
//
==========================================================================*/
/*-------------------------------------------------------------------------
 box
--------------------------------------------------------------------------*/
.box {
  padding: 20px 0 40px;
}
@media (max-width: 767px) {
	.box{
		padding: 20px 0;
	}
}


/*-------------------------------------------------------------------------
 list
--------------------------------------------------------------------------*/

/* リストアイテムの上マージン
--------------------------------------------------------*/


/* ドットリスト
--------------------------------------------------------*/
.list-dot > li {
  position: relative;
  padding-left: 1.2em;
}
.list-dot > li:before {
  content: "・";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
}

/* ドットリスト（大）
--------------------------------------------------------*/
.list-disc > li {
  margin-left: 25px;
  list-style: disc;
}

/* スクエアリスト
--------------------------------------------------------*/
.list-square > li {
  position: relative;
  padding-left: 1.2em;
}

.list-square > li:before {
  content: "■";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
}

/* アイコンなしリスト
--------------------------------------------------------*/
.list-nomark > li {
  margin-top: .4em;
  list-style: none;
}

@media (max-width: 767px) {
  .list-nomark > li {
    margin-top: .2em;
  }
}

/* 数字リスト
--------------------------------------------------------*/
.list-num > li {
  list-style-type: decimal;
  margin-left: 1.7em;
}

/* 小文字のアルファベットリスト
--------------------------------------------------------*/
.list-alpha > li {
  list-style-type: lower-alpha;
  margin-left: 1.7em;
}

/* 注釈リスト
--------------------------------------------------------*/
.list-note {
  margin-top: .5em;
  padding-left: 1em;
}

.list-note > li {
  margin-top: .2em;
  text-indent: -1em;
  font-size: 12px;
}

/* インラインリスト
--------------------------------------------------------*/
.list-inline {
  overflow: hidden;
}

.list-inline > li {
  float: left;
  margin: .35em 40px 0 0;
}

.list-inline > li:last-child {
  margin-right: 0;
}

/* リンクリスト
--------------------------------------------------------*/
.linklist > li > a {
  position: relative;
  display: inline-block;
  padding-left: 18px;
  text-decoration: none;
}

.linklist > li > a:hover {
  color: #a00;
}

.linklist > li > a:hover:before {
  border-color: #a00;
}

.linklist > li > a:before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 7px;
  left: 0;
  width: 5px;
  height: 5px;
  border-top: 2px solid #c00;
  border-right: 2px solid #c00;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}

@media (max-width: 600px) {
  .linklist > li > a {
    padding-left: 18px;
  }
  .linklist > li > a:before {
    top: 5px;
  }
}

/*-------------------------------------------------------------------------
 icon
--------------------------------------------------------------------------*/
/* svg
--------------------------------------------------------*/
.defs{
	display: none;
}
[class^="icon-"], [class*=" icon-"] {
  display: inline-block;
  width: 1em;
  height: 1em;
  stroke-width: 0;
  stroke: currentColor;
  fill: currentColor;
}
.icon-period{
	display: block;
	width: 100%;
	height: auto;
}
@media (max-width: 767px) {
  .icon-period{
  	width: 80%;
  	margin: -2em auto 1em;
  }
}


/*-------------------------------------------------------------------------
 button
--------------------------------------------------------------------------*/
.btn{
	display: block;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	text-align: center;
}
@media (max-width: 767px) {
  .btn {
  }
}

.default{
}

/* basic button
--------------------------------------------------------*/


/* back button
--------------------------------------------------------*/


/* btn area
--------------------------------------------------------*/







/*=========================================================================
//
// Theme(look&feel)
//
==========================================================================*/
/*-------------------------------------------------------------------------
 heading
--------------------------------------------------------------------------*/
.heading1{
	background: #003C71;
	color: #fff;
	text-align: center;
	margin: 0 0 2em;
	padding: 1em 0;
	font-size: 1.2em;
}
.heading2{
	color: #fff;
	text-align: center;
	font-size: 1em;
	margin: 0 auto 2em;
	position: relative;
}
.heading2:before{
	content:"";
	display:block;
	width:100%;
	height:1px;
	border-top:1px solid #e61e19;
	/* border-bottom:1px solid #f6ab00; */
	position:absolute;
	top:50%;
	/* margin-top:-2px; */
}

.heading2 span{
	display: inline-block;
	background: #e61e19;
	padding: 0 3em;
	height: 40px;
	line-height: 40px;
	position: relative;
}
@media (max-width: 767px) {
	.heading1{
		padding: .5em 0;
	}
	.heading2{
		margin: 0 auto 1em;
	}
	.heading2 span{
		height: 30px;
		line-height: 30px;
	}
}

.heading3{
	margin: 0;
	font-size: 1em;
}
@media (max-width: 767px) {

}

/*-------------------------------------------------------------------------
 dl
--------------------------------------------------------------------------*/
.dl-1{

}
@media (max-width: 767px) {
  .dl-1 {
  }
}

/*-------------------------------------------------------------------------
 table
--------------------------------------------------------------------------*/
/* entry table
--------------------------- */
.module-entry-table{
	width: 100%;
	margin: 1em auto;
}
.module-entry-table tr{

}
.module-entry-table tr:nth-child(even) th,
.module-entry-table tr:nth-child(even) td {
	background: #f4f4f4;
}
.module-entry-table th{
	text-align: left;
	position: relative;
	width: 28%;
	padding: .64em 1em .6em 2em;
	font-weight: normal;
	font-size: 14px;
}
.module-entry-table th.must:after{
	content: '*';
	font-weight: normal;
	font-size: 1.2em;
	color: #e61e19;
	padding: 0 .5em;
}
.module-entry-table.login-table th{
	text-align: right;
	width: 45%;
}
.module-entry-table.login-table td{
	width: 55%;
}
.module-entry-table td{
	font-size: .9em;
	padding: .6em 1em ;
}
@media (max-width: 767px) {
	.module-entry-table{
		margin: 1em auto 0;
	}
	.module-entry-table th,
	.module-entry-table.login-table th,
  .module-entry-table td{
  	width: 100%;
  	display: block;
  	font-size: 13px;
  	text-align: left;
  }
  .module-entry-table.login-table td{
		width: 100%;
	}
  .module-entry-table tr:nth-child(even) th,
	.module-entry-table tr:nth-child(even) td {
		background: #fff;
	}
	.module-entry-table th,
	.module-entry-table tr:nth-child(even) th{
		padding: .2em .5em;
		text-align: left;
		background: #eee;
		/* border-top: 1px solid #d8d8d8; */
		font-weight: bold;
	}
	.module-entry-table td{
		padding: 1.2em .5em;
	}
}

/* q table
--------------------------- */
.module-q-table{
	width: 100%;
	margin: 1em auto;
}
.module-q-table th,
.module-q-table td{
	width: 100%;
	display: block;
	text-align: left;
}
.module-q-table th{
	padding: .5em;
	text-align: left;
	background: #003C71;
	color: #fff;
	font-size: 1.4em;
	font-weight: bold;
}
.module-q-table th span{
	margin-right: 1em;
	padding: 0 1em;
}
.module-q-table th.must:after{
	content: '*';
	font-weight: normal;
	font-size: 1.2em;
	color: #e61e19;
	padding: 0 .5em;
}
.module-q-table td{
	padding: 2em 0;
}
@media (max-width: 767px) {
	.module-q-table th,
	.module-q-table td{

	}
	.module-q-table th{
		font-size: 1.2em;
	}
	.module-q-table th span {
    margin-right: .5em;
    padding: 0 .5em;
	}
	.module-q-table th.must:after {
    content: '*';
    font-weight: normal;
    font-size: 1em;
    color: #e61e19;
    padding: 0 0 0 .5em;
	}
}

.btn-area {
  text-align: center;
  /* padding: 2em 0 0; */
  margin: 0 auto 2em;
}
@media (max-width: 767px) {

}

a.btn-top{
	display: block;
	text-decoration: none;
	background: #0075c2;
	margin: 2em auto;
	padding: .8em 0;
	width: 30%;
	color: #fff;
	font-weight: bold;
	position: relative;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
a.btn-top:hover{
	opacity: .8;
}
@media (max-width: 767px) {
	a.btn-top{
		width: 80%;
		margin: 2em auto 0;
	}
}

span.must {
  font-size: 1.2em;
  color: #e61e19;
  margin-right: .5em;
}
p.caution{
	font-size: .9em;
	margin: .5em 0 0;
	color: #333;
}

.privacyBox{
	padding: 20px;
	border: 1px solid #ccc;
	line-height: 1.8;
	margin: 1em 0 2em;
	font-size: .9em;
}
.pricacyAgree{
	text-align: center;
	font-weight: bold;
	font-size: 15px;
}
.pricacyAgree p.must:after{
	content: '*';
	font-weight: normal;
	font-size: 1.2em;
	color: #e61e19;
	padding: 0;
}
@media (max-width: 767px) {
	.privacyBox{
		padding: 15px 10px;
	}
}


/*-------------------------------------------------------------------------
 form parts
--------------------------------------------------------------------------*/
input[type="text"],
input[type="password"] {
  padding: 6px;
  border-radius: 1px;
  border: 0;
  border: 1px solid #aaa;
  margin: 0 12px;
}
input[type="text"]:first-child,
input[type="password"]:first-child{
	margin: 0 12px 0 0;
}
input[type="text"][class^="l"] {
	width: 85%;
}
input[type="text"][class^="m"],
input[type="password"][class^="m"] {
	width: 30%;
}
input[type="text"][class^="s"] {
	width: 30%;
}
input[type="text"][class^="ss"] {
	width: 10%;
}
.serial-box input[type="text"][class^="ss"] {
	width: 25%;
}


input[type="email"][class^="l"] {
	width: 100%;
	height: 55px;
	margin-bottom: 2em;
	padding: 0 20px;
}

.select {
  position: relative;
/*
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
*/
  height: 55px;
  padding: 0;
  border: 1px solid #d2d2d2;
  background-color: #fff;
/*
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
*/
}
select{
	-webkit-appearance: none;/* ベンダープレフィックス(Google Chrome、Safari用) */
	-moz-appearance: none; /* ベンダープレフィックス(Firefox用) */
	appearance: none; /* 標準のスタイルを無効にする */
  background-color: transparent;
  border-style: none;
  color: inherit;
  outline: none;
  border: none;
  padding: 0 55px 0 20px;
  width: 100%;
  height: 55px;
  line-height: 55px;
  box-sizing: border-box;
}
select::-ms-expand {
  display: none;
}
.select::after {
  position: absolute;
  top: 15px;
  right: 25px;
  width: 15px;
  height: 15px;
  content: '';
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  pointer-events: none;
  border: solid #b5b5b5;
  border-width: 0 2px 2px 0;
}



@media (max-width: 767px) {
	input[type="text"],
	input[type="text"]:first-child{
		padding: 5px;
		margin: 0;
	}
	input[type="text"][class^="l"] {
	    width: 100%;
	}
	input[type="text"][class^="m"],
	input[type="password"][class^="m"] {
		width: 80%;
	}
	input[type="text"][class^="s"] {
	    width: 30%;
	}
	input[type="text"][class^="ss"] {
	    width: 25%;
	}
	select {
		width: 100%;
	}
}
@media (max-width: 320px) {
	input[type="text"].add-text {
		margin-top: .5em;
	}
}

input[type="text"].error,
input[type="email"].error,
select.error{
	border: 1px solid #e61e19;
}
.error-message{
	color: #e61e19;
	margin: .5em 0;
}
input[type="text"].off,
select.off{
    background: #ddd;
}

/* submit btn
--------------------------------------------------------*/
input[type="submit"],
input[type="button"]{
	border: none;
	display: inline-block;
	background: #0075c2;
	margin: 0 1em;
	padding: .8em 0;
	width: 20%;
	border-radius: 4px;
	color: #fff;
	letter-spacing: .1em;
	font-size: 1.2em;
	font-weight: bold;
	position: relative;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	transition: all 0.2s ease;
}
input[type="submit"]:hover,
input[type="button"]:hover{
	opacity: .8;
}
@media (max-width: 767px) {
	input[type="submit"],
	input[type="button"]
	{
		width: 80%;
		font-size: 1.2em;
		margin-bottom: 1em;
	}
}

input.zip {
	cursor: pointer;
	font-size: .9em;
}
@media (max-width: 767px) {
	input[type="button"].zip {
		margin: 1em 0 0 .5em;
		width: 40%;
		padding: .8em .5em;
		letter-spacing: 0;
	}
}
@media (max-width: 375px) {
	input[type="button"].zip {
		font-size: 10px;
	}
}

/* checkbox
--------------------------------------------------------*/
[type="checkbox"]:checked,
[type="checkbox"]:not(:checked) {
  position: absolute;
  left: -9999px;
}
[type="checkbox"]:checked + label,
[type="checkbox"]:not(:checked) + label{
  position: relative;
  padding-left: 24px;
  cursor: pointer;
  line-height: 20px;
  display: inline-block;
  margin: .5em 1em .5em 0;
}
[type="checkbox"]:checked + label:before,
[type="checkbox"]:not(:checked) + label:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 18px;
  height: 18px;
  border: 1px solid #aaa;
  background: #fff;
}
[type="checkbox"]:checked + label:after,
[type="checkbox"]:not(:checked) + label:after {
  content: '';
  width: 8px;
  height: 8px;
  background: #0071c5;
  position: absolute;
  top: 5px;
  left: 5px;
  transition: all 0.2s ease;
}
[type="checkbox"]:not(:checked) + label:after {
  opacity: 0;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
}
[type="checkbox"]:checked + label:after {
  opacity: 1;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}

/* radio
--------------------------------------------------------*/
[type="radio"]:checked,
[type="radio"]:not(:checked) {
  position: absolute;
  left: -9999px;
}
[type="radio"]:checked + label,
[type="radio"]:not(:checked) + label{
  position: relative;
  padding-left: 24px;
  cursor: pointer;
  line-height: 20px;
  display: inline-block;
  margin: .5em 1em .5em 0;
}
[type="radio"]:checked + label:before,
[type="radio"]:not(:checked) + label:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 18px;
  height: 18px;
  border: 1px solid #aaa;
  border-radius: 100%;
  background: #fff;
}
[type="radio"]:checked + label:after,
[type="radio"]:not(:checked) + label:after {
  content: '';
  width: 12px;
  height: 12px;
  background: #0071c5;
  position: absolute;
  top: 3px;
  left: 3px;
  border-radius: 100%;
  transition: all 0.2s ease;
}
[type="radio"]:not(:checked) + label:after {
  opacity: 0;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
}
[type="radio"]:checked + label:after {
  opacity: 1;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}


/* upload */
.receipt {
/*
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
*/
  margin: 2em 0;
}
.receipt_image {
  width: 100%;
  margin: 0 auto;
/*   margin-right: 18px; */
}
.receipt_input {
/*
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
*/
/*   height: 112px; */
  margin-left: 63px;
  padding: 32px 44px;
  background-color: #f7f7f7;
/*
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
*/
}
.receipt_input_btn {
  line-height: 1;
  padding: 10px 6px;
  text-align: center;
  border: 1px solid #b5b5b5;
  background: -webkit-gradient(linear, left top, left bottom, from(#f6f6f6), color-stop(#ebebeb), to(#dedede));
  background: -webkit-linear-gradient(#f6f6f6, #ebebeb, #dedede);
  background: linear-gradient(#f6f6f6, #ebebeb, #dedede);
  width: 180px;
  float: left;
}
.receipt_input input[type='text'] {
	width: 50%;
	float: left;
/*
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
*/
}
.receipt_input input[type='file'] {
  display: none;
}

@media (max-width: 767px) {
	.receipt {
/*
		-webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
*/
    width: 100%;
	}
	.receipt_image {
		display: block;
    width: 60%;
    margin: 0 auto;
  }
  .receipt_input {
	  width: 100%;
    height: auto;
    margin: 2em 0 0;
    padding: 1.5em;
  }
  .receipt_input input[type='text'] {
	  margin-right: 10px;
	  width: 60%;
  }
  .receipt_input_btn {
	  width: 120px;
	  padding: 8px 6px;
  }
}
@media (max-width: 385px) {
	.receipt_input {
		padding: 1.5em 1em;
	}
	.receipt_image {
    width: 80%;
  }
  .receipt_input input[type='text'] {
	  margin-right: 10px;
	  width: 50%;
  }
  .receipt_input_btn {
	  width: 120px;
  }
}

/*-------------------------------------------------------------------------
 local ： その他
--------------------------------------------------------------------------*/
.l-header-text{
}
.l-header-text .col{
	float: left;
}
.l-header-text .col:first-child{
	margin-left: 0;
}
.l-header-text .col:last-child{
	padding: 0 3em;
}
.l-header-text .span_12 { width: 48.0%; }

@media (min-width: 1600px) {
	.l-header-text .col:last-child{
		padding: 0 4em;
	}
}
@media (max-width: 1024px) {
	.l-header-text .col:last-child{
		padding: 0 2em;
	}
}
@media (max-width: 767px) {
	.l-header-text .col{
		float: none;
		margin: 0;
		width: 100%;
	}
	.l-header-text .col:last-child{
		padding: 1em 2em;
	}
}
@media (max-width: 640px) {
}
@media (max-width: 480px) {

}


.h-text{
	/* text-align: center; */
	position: absolute;
	bottom: -500px;
	padding: 0 1em;
}
.h-text h1{
	color: #f6ab00;
	margin: 0;
	font-size: 1.5em;
}
.h-text h1 br.sp{
	display: none;
}
.h-text p{
	color: #fff;
	margin: .5em 0;
}
.h-text span{
	color: #f6ab00;
	font-size: .88em;
}
@media (min-width: 1620px) {
	.h-text{
		bottom: -560px;
	}
}
@media (max-width: 1000px) {
	.h-text{
		bottom: -320px;
	}
	.h-text h1{
		font-size: 1.2em;
		text-align: center;
	}
	.h-text p{
	}
	.h-text span{
	}
}
@media (max-width: 767px) {
	.h-text{
		bottom: -440px;
	}
	.h-text p{
		font-size: .88em;
	}
}
@media (max-width: 350px) {
	.h-text h1 br.sp{
		display: block;
	}
}


/* 概要 */
.overview p{
	margin: .5em 0;
}

/* 概要 */
.l-footer .notes{
	margin: 1em 0 2em;
	font-size: .8em;
	text-align: left;
}
.l-footer .notes p{
	font-weight: bold;
	margin-bottom: 0;
}
.l-footer .notes a{
	color: #00AEEF;
}

/**/
.sp{ display: none; }
@media (max-width: 767px) {
	.sp{ display: block; }
	.pc{ display: none; }
}
