@charset "utf-8";
/*-------------------------------------------------------


 見た目


--------------------------------------------------------*/
/*-------------------------------------------------------
 フォントサイズ
--------------------------------------------------------*/	
	.font10 { font-size: 10px;font-size: 1.0rem; }
	.font12 { font-size: 12px;font-size: 1.2rem; }
	.font13 { font-size: 13px;font-size: 1.3rem; }
	.font14 { font-size: 14px;font-size: 1.4rem; }
	.font16 { font-size: 16px;font-size: 1.6rem; }
	.font18 { font-size: 18px;font-size: 1.8rem; }
	.font20 { font-size: 20px;font-size: 2.0rem; }
	.font22 { font-size: 22px;font-size: 2.2rem; }
	.font24 { font-size: 24px;font-size: 2.4rem; }
	.font26 { font-size: 26px;font-size: 2.6rem; }
	.font28 { font-size: 28px;font-size: 2.8rem; }
	.font30 { font-size: 30px;font-size: 3.0rem; }
	.font32 { font-size: 32px;font-size: 3.2rem; }
	.font36 { font-size: 36px;font-size: 3.6rem; }
	.font42 { font-size: 42px;font-size: 4.2rem; }
	.font48 { font-size: 48px;font-size: 4.8rem; }
	
	@media screen and (max-width:767px) {
	.font20 { font-size: 16px;font-size: 1.6rem; }
	.font22 { font-size: 18px;font-size: 1.8rem; }
	.font24 { font-size: 20px;font-size: 2.0rem; }
	.font26 { font-size: 22px;font-size: 2.2rem; }
	.font28 { font-size: 24px;font-size: 2.4rem; }
	.font30 { font-size: 26px;font-size: 2.6rem; }
	.font32 { font-size: 28px;font-size: 2.8rem; }
	.font36 { font-size: 32px;font-size: 3.2rem; }
	.font42 { font-size: 33px;font-size: 3.3rem; }
	.font48 { font-size: 33px;font-size: 3.3rem; }
	}
	
/*-------------------------------------------------------
 マージン　パディング
--------------------------------------------------------*/	
	.mt-20 { margin-top:  -20px; }
	.mt-10 { margin-top:  -10px; }
	.mt-05 { margin-top:   -5px; }
	
	.mt00 { margin-top:  0px !important; }    .pt00 { padding-top:  0px !important; }

	.mt05 { margin-top:  5px; }    .pt05 { padding-top:  5px; }
	.mt10 { margin-top: 10px; }    .pt10 { padding-top: 10px; }
	.mt15 { margin-top: 15px; }    .pt15 { padding-top: 15px; }
	.mt20 { margin-top: 20px; }    .pt20 { padding-top: 20px; }
	.mt25 { margin-top: 25px; }    .pt25 { padding-top: 25px; }
	.mt30 { margin-top: 30px; }    .pt30 { padding-top: 30px; }
	.mt35 { margin-top: 35px; }    .pt35 { padding-top: 35px; }
	.mt40 { margin-top: 40px; }    .pt40 { padding-top: 40px; }
	.mt45 { margin-top: 45px; }    .pt45 { padding-top: 45px; }
	.mt50 { margin-top: 50px; }    .pt50 { padding-top: 50px; }
	.mt55 { margin-top: 55px; }    .pt55 { padding-top: 55px; }
	.mt60 { margin-top: 60px; }    .pt60 { padding-top: 60px; }
	.mt65 { margin-top: 65px; }    .pt65 { padding-top: 65px; }
	.mt70 { margin-top: 70px; }    .pt70 { padding-top: 70px; }
	.mt75 { margin-top: 75px; }    .pt75 { padding-top: 75px; }
	.mt80 { margin-top: 80px; }    .pt80 { padding-top: 80px; }
	.mt85 { margin-top: 85px; }    .pt85 { padding-top: 85px; }
	.mt90 { margin-top: 90px; }    .pt90 { padding-top: 90px; }
	.mt95 { margin-top: 95px; }    .pt95 { padding-top: 95px; }
	.mt100{ margin-top:100px; }    .pt100{ padding-top:100px; }

	.mr00 { margin-right:  0px; }  .pr00 { padding-right:  0px; }
	.mr05 { margin-right:  5px; }  .pr05 { padding-right:  5px; }
	.mr10 { margin-right: 10px; }  .pr10 { padding-right: 10px; }
	.mr15 { margin-right: 15px; }  .pr15 { padding-right: 15px; }
	.mr20 { margin-right: 20px; }  .pr20 { padding-right: 20px; }
	.mr25 { margin-right: 25px; }  .pr25 { padding-right: 25px; }
	.mr30 { margin-right: 30px; }  .pr30 { padding-right: 30px; }
	.mr35 { margin-right: 35px; }  .pr35 { padding-right: 35px; }
	.mr40 { margin-right: 40px; }  .pr40 { padding-right: 40px; }
	.mr45 { margin-right: 45px; }  .pr45 { padding-right: 45px; }
	.mr50 { margin-right: 50px; }  .pr50 { padding-right: 50px; }
	.mr55 { margin-right: 55px; }  .pr55 { padding-right: 55px; }
	.mr60 { margin-right: 60px; }  .pr60 { padding-right: 60px; }
	.mr65 { margin-right: 65px; }  .pr65 { padding-right: 65px; }
	.mr70 { margin-right: 70px; }  .pr70 { padding-right: 70px; }
	.mr75 { margin-right: 75px; }  .pr75 { padding-right: 75px; }
	.mr80 { margin-right: 80px; }  .pr80 { padding-right: 80px; }
	.mr85 { margin-right: 85px; }  .pr85 { padding-right: 85px; }
	.mr90 { margin-right: 90px; }  .pr90 { padding-right: 90px; }
	.mr95 { margin-right: 95px; }  .pr95 { padding-right: 95px; }
	.mr100{ margin-right:100px; }  .pr100{ padding-right:100px; }

	.mb00 { margin-bottom:  0px !important; } .pb00 { padding-bottom:  0px !important; }
	
	.mb05 { margin-bottom:  5px; } .pb05 { padding-bottom:  5px; }
	.mb10 { margin-bottom: 10px; } .pb10 { padding-bottom: 10px; }
	.mb15 { margin-bottom: 15px; } .pb15 { padding-bottom: 15px; }
	.mb20 { margin-bottom: 20px; } .pb20 { padding-bottom: 20px; }
	.mb25 { margin-bottom: 25px; } .pb25 { padding-bottom: 25px; }
	.mb30 { margin-bottom: 30px; } .pb30 { padding-bottom: 30px; }
	.mb35 { margin-bottom: 35px; } .pb35 { padding-bottom: 35px; }
	.mb40 { margin-bottom: 40px; } .pb40 { padding-bottom: 40px; }
	.mb45 { margin-bottom: 45px; } .pb45 { padding-bottom: 45px; }
	.mb50 { margin-bottom: 50px; } .pb50 { padding-bottom: 50px; }
	.mb55 { margin-bottom: 55px; } .pb55 { padding-bottom: 55px; }
	.mb60 { margin-bottom: 60px; } .pb60 { padding-bottom: 60px; }
	.mb65 { margin-bottom: 65px; } .pb65 { padding-bottom: 65px; }
	.mb70 { margin-bottom: 70px; } .pb70 { padding-bottom: 70px; }
	.mb75 { margin-bottom: 75px; } .pb75 { padding-bottom: 75px; }
	.mb80 { margin-bottom: 80px; } .pb80 { padding-bottom: 80px; }
	.mb85 { margin-bottom: 85px; } .pb85 { padding-bottom: 85px; }
	.mb90 { margin-bottom: 90px; } .pb90 { padding-bottom: 90px; }
	.mb95 { margin-bottom: 95px; } .pb95 { padding-bottom: 95px; }
	.mb100{ margin-bottom:100px; } .pb100{ padding-bottom:100px; }

	.ml00 { margin-left:  0px; }   .pl00 { padding-left:  0px; }
	.ml05 { margin-left:  5px; }   .pl05 { padding-left:  5px; }
	.ml10 { margin-left: 10px; }   .pl10 { padding-left: 10px; }
	.ml15 { margin-left: 15px; }   .pl15 { padding-left: 15px; }
	.ml20 { margin-left: 20px; }   .pl20 { padding-left: 20px; }
	.ml25 { margin-left: 25px; }   .pl25 { padding-left: 25px; }
	.ml30 { margin-left: 30px; }   .pl30 { padding-left: 30px; }
	.ml35 { margin-left: 35px; }   .pl35 { padding-left: 35px; }
	.ml40 { margin-left: 40px; }   .pl40 { padding-left: 40px; }
	.ml45 { margin-left: 45px; }   .pl45 { padding-left: 45px; }
	.ml50 { margin-left: 50px; }   .pl50 { padding-left: 50px; }
	.ml55 { margin-left: 55px; }   .pl55 { padding-left: 55px; }
	.ml60 { margin-left: 60px; }   .pl60 { padding-left: 60px; }
	.ml65 { margin-left: 65px; }   .pl65 { padding-left: 65px; }
	.ml70 { margin-left: 70px; }   .pl70 { padding-left: 70px; }
	.ml75 { margin-left: 75px; }   .pl75 { padding-left: 75px; }
	.ml80 { margin-left: 80px; }   .pl80 { padding-left: 80px; }
	.ml85 { margin-left: 85px; }   .pl85 { padding-left: 85px; }
	.ml90 { margin-left: 90px; }   .pl90 { padding-left: 90px; }
	.ml95 { margin-left: 95px; }   .pl95 { padding-left: 95px; }
	.ml100{ margin-left:100px; }   .pl100{ padding-left:100px; }

/*-------------------------------------------------------
 フロート
--------------------------------------------------------*/	
	.fl { float: left; }
	.fr { float: right; }
	.clear { clear:both; }
	.float-none{ float:none; }

/*-------------------------------------------------------
 テキスト横位置
--------------------------------------------------------*/	
	.al { text-align: left !important; }
	.ar { text-align: right !important; }
	.ac { text-align: center !important; }

/*-------------------------------------------------------
 縦位置
--------------------------------------------------------*/	
	.vertical-top{vertical-align:top}
	.vertical-middle{vertical-align:middle}
	.vertical-bottom{vertical-align:bottom}

/*-------------------------------------------------------
 垂直中央配置
--------------------------------------------------------*/	
	.vertically-center {
	　　display: table-cell;
	　　vertical-align: middle;
	}
	.vertically-center-second{
		position: relative;
		top: 50%;
		-webkit-transform: translateY(-50%);
		-o-transform: translateY(-50%);
		transform: translateY(-50%);
	}

/*-------------------------------------------------------
 非表示
--------------------------------------------------------*/	
	.hidden { display: none; }

/*-------------------------------------------------------
 PC・スマホ非表示
--------------------------------------------------------*/	
	.pcnone { display: none; }
	
	@media screen and (max-width : 767px){
	.spnone { display: none !important; }
	.pcnone { display: block; }
	}

/*-------------------------------------------------------
 アニメーション
--------------------------------------------------------*/	
	.anm,
	.anm * {
		-webkit-transition: all .2s ease-in-out;
		-moz-transition: all .2s ease-in-out;
		-ms-transition: all .2s ease-in-out;
		-o-transition: all .2s ease-in-out;
		transition: all .2s ease-in-out;
	}

/*-------------------------------------------------------
 半透明化
--------------------------------------------------------*/	
	.transparent {
	　　filter: alpha(opacity=50);
	　　-khtml-opacity: 0.5;
	　　-moz-opacity: 0.5;
	　　opacity: 0.5;
	}

/*-------------------------------------------------------
 リスト
--------------------------------------------------------*/	
	.indent {
		text-indent:-1.0em;
		padding-left:1.0em;
	}
	.list-indent {
		margin-left: 1.0em;
	}
	.list-indent li {
		text-indent: -1.0em;
	}


	.list-inline li {
		display: inline-block;
	}
	.list-p05 li {
		padding: 5px;
		width: 100px;
    	height: 40px;
	}
	.list-img-middle li img {
		vertical-align: middle;
		width: 100%;
	}

/*-------------------------------------------------------
 エラー
--------------------------------------------------------*/
	.error{
		clear:both;
		color:#dd4b39;
		font-weight:bold;
	}
	
/*-------------------------------------------------------
 必須
--------------------------------------------------------*/
	.required {
		color: #FFF;
		background-color: #dd4b39;
		padding: 3px 4px;
		font-size: 14px;
		letter-spacing: 2px;
		border-radius: 2px;
		font-weight: normal;
		white-space: nowrap;
	}
	
/*-------------------------------------------------------
 代替
--------------------------------------------------------*/
	.hide-text { 
		text-indent: 100%; 
		white-space: nowrap; 
		overflow: hidden;
	}
	
/*-------------------------------------------------------
 ボールド
--------------------------------------------------------*/
	.bold{
		font-weight:bold;
	}
	.bold-none{
		font-weight:normal;
	}

/*-------------------------------------------------------
 行間
--------------------------------------------------------*/
	.line-height-normal{
		line-height:normal;
	}
	
/*-------------------------------------------------------
 改行禁止
--------------------------------------------------------*/
	.nowrap{
		white-space:nowrap;
	}

/*-------------------------------------------------------
 リンク無効
--------------------------------------------------------*/
	a.disabled {
		pointer-events: none;
		opacity:0.5;
		cursor:default !important;
	}
	a.disabled:hover,
	a.disabled:focus {
		text-decoration:none;
	}

/*-------------------------------------------------------
 カーソル
--------------------------------------------------------*/
	.cursor-pointer{
		cursor: pointer;
	}
	.cursor-default{
		cursor: default;
	}
	
/*-------------------------------------------------------
 ボーダー
--------------------------------------------------------*/
	.border{
		border:1px solid #002D46;
	}
	.border-bottom{
		border-bottom:1px solid #002D46;
	}
	.border-right{
		border-right:1px solid #002D46;
	}
	.border-left{
		border-left:1px solid #002D46;
	}
	.border-top{
		border-top:1px solid #002D46;
	}

/*-------------------------------------------------------
 ボーダーなし
--------------------------------------------------------*/
	.border-none{
		border:none;
	}
	.border-top-none{
		border-top:none;
	}
	.border-bottom-none{
		border-bottom:none;
	}
	.border-left-none{
		border-left:none;
	}
	.border-right-none{
		border-right:none;
	}
	
/*-------------------------------------------------------
 ボーダーカラー
--------------------------------------------------------*/
	.border-color-primary{
		border-color:#738b99;
	}
	.border-color-normal{
		border-color:#ccc;
	}
	.border-color-black{
		border-color:#000;
	}
	.border-color-light{
		border-color:#666;
	}
	.border-color-white{
		border-color:#fff;
	}


/*-------------------------------------------------------
 ボーダー種類
--------------------------------------------------------*/
	.border-dotted{
		border-style: dotted;
	}



/*-------------------------------------------------------
 角丸
--------------------------------------------------------*/
	.border-radius00{border-radius:0px;}	
	.border-radius05{border-radius:5px;}
	.border-radius10{border-radius:10px;}
	.border-radius20{border-radius:20px;}
	.border-radius30{border-radius:30px;}
	.border-radius40{border-radius:40px;}
	.border-radius50{border-radius:50px;}
	.border-radius60{border-radius:60px;}
	.border-radius70{border-radius:70px;}
	.border-radius80{border-radius:80px;}
	.border-radius90{border-radius:90px;}
	.border-radius100{border-radius:100px;}

/*-------------------------------------------------------
 インナー
--------------------------------------------------------*/	
	.inner {
		margin:auto;
		padding:20px;
		box-sizing:border-box;
	}
	.inner-p00 {padding:0px;}
	.inner-p10 {padding:10px;}
	.inner-p20 {padding:20px;}
	.inner-p30 {padding:30px;}
	.inner-p40 {padding:40px;}
	.inner-p50 {padding:50px;}
	.inner-p60 {padding:60px;}

	.inner-size250  {width:250px;}
	.inner-size300  {width:300px;}
	.inner-size320  {width:320px;}
	.inner-size360  {width:360px;}
	.inner-size390  {width:390px;}
	.inner-size480  {width:480px;}
	.inner-size540  {width:540px;}
	.inner-size580  {width:580px;}
	.inner-size600  {width:600px;}
	.inner-size640  {width:640px;}
	.inner-size650  {width:650px;}
	.inner-size740  {width:740px;}
	.inner-size840  {width:840px;}
	.inner-size850  {width:850px;}
	.inner-size880  {width:880px;}
	.inner-size890  {width:890px;}
	.inner-size960  {width:960px;}
	.inner-size980  {width:980px;}
	.inner-size990  {width:990px;}
	.inner-size1000 {width:1000px;}
	.inner-size1020 {width:1020px;}
	.inner-size1030 {width:1030px;}
	.inner-size1040 {width:1040px;}
	.inner-size1070 {width:1070px;}
	.inner-size1100 {width:1100px;}
	.inner-size1140 {width:1140px;}
	.inner-size1200 {width:1200px;}
	.inner-size1280 {width:1280px;}
	.inner-size1400 {width:1400px;}
	.inner-size1600 {width:1600px;}
	
	@media screen and (max-width : 250px) {.inner-size250 {width:auto;}}
	@media screen and (max-width : 300px) {.inner-size300 {width:auto;}}
	@media screen and (max-width : 320px) {.inner-size320 {width:auto;}}
	@media screen and (max-width : 330px) {.inner-size330 {width:auto;}}
	@media screen and (max-width : 360px) {.inner-size360 {width:auto;}}
	@media screen and (max-width : 480px) {.inner-size480 {width:auto;}}
	@media screen and (max-width : 540px) {.inner-size540 {width:auto;}}
	@media screen and (max-width : 580px) {.inner-size580 {width:auto;}}
	@media screen and (max-width : 640px) {.inner-size640 {width:auto;}}
	@media screen and (max-width : 650px) {.inner-size650 {width:auto;}}
	@media screen and (max-width : 600px) {.inner-size600 {width:auto;}}
	@media screen and (max-width : 740px) {.inner-size740 {width:auto;}}
	@media screen and (max-width : 840px) {.inner-size840 {width:auto;}}
	@media screen and (max-width : 850px) {.inner-size850 {width:auto;}}
	@media screen and (max-width : 880px) {.inner-size880 {width:auto;}}
	@media screen and (max-width : 890px) {.inner-size890 {width:auto;}}
	@media screen and (max-width : 960px) {.inner-size960 {width:auto;}}
	@media screen and (max-width : 980px) {.inner-size980 {width:auto;}}
	@media screen and (max-width : 990px) {.inner-size990 {width:auto;}}
	@media screen and (max-width : 1000px){.inner-size1000 {width:auto;}}
	@media screen and (max-width : 1020px){.inner-size1020 {width:auto;}}
	@media screen and (max-width : 1030px){.inner-size1030 {width:auto;}}
	@media screen and (max-width : 1040px){.inner-size1040 {width:auto;}}
	@media screen and (max-width : 1070px){.inner-size1070 {width:auto;}}
	@media screen and (max-width : 1100px){.inner-size1100 {width:auto;}}
	@media screen and (max-width : 1140px){.inner-size1140 {width:auto;}}
	@media screen and (max-width : 1200px){.inner-size1200 {width:auto;}}
	@media screen and (max-width : 1280px){.inner-size1280 {width:auto;}}
	@media screen and (max-width : 1400px){.inner-size1400 {width:auto;}}
	@media screen and (max-width : 1600px){.inner-size1600 {width:auto;}}

/*-------------------------------------------------------
 アイコンサイズ
--------------------------------------------------------*/	
	.icon-size10:after  {width:10px;height:10px;}
	.icon-size15:after  {width:15px;height:15px;}
	.icon-size20:after  {width:20px;height:20px;}
	.icon-size40:after  {width:40px;height:40px;}
	.icon-size60:after  {width:60px;height:60px;}
	.icon-size80:after  {width:80px;height:80px;}
	.icon-size100:after {width:100px;height:100px;}
	.icon-size120:after {width:120px;height:120px;}
	.icon-size140:after {width:140px;height:140px;}
	.icon-size160:after {width:160px;height:160px;}
	
/*-------------------------------------------------------
 テーブルレイアウト
--------------------------------------------------------*/
	.display-table{
		display:table;
	}
	.display-table-cell{
		display:table-cell;
	}

/*-------------------------------------------------------
 背景
--------------------------------------------------------*/	
	.bg-none {
		background-color: transparent;
	}
	.bg-primary{
		background-color:#0097db; /* メインカラー */
	}
	.bg-secondary{
		background-color:#103363; /* サブカラー */
	}
	.bg-blue {
		background-color:#003f6c;
	}
	.bg-lightblue {
		background-color:#00cfff;
	}
	.bg-gray {
		background-color:#eeeeee;
	}
	.bg-lightgray {
		background-color:#ebeef2;
	}
	.bg-green {
		background-color:#79b600;
	}
	.bg-yellow {
		background-color:#fbb03b;
	}
	.bg-pink {
		background-color:#f24966;
	}
	.bg-dblue {
		background-color:#1d2088;
	}
	.bg-orange {
		background-color:#ff8022;
	}
	.bg-black {
		background-color:#000;
	}
	.bg-white {
		background-color:#FFF;
	}	

/*-------------------------------------------------------
 テキストカラー
--------------------------------------------------------*/
	.txt-primary{
		color:#002D46; /* メインカラー */
	}
	.txt-secondary{
		color:#103363; /* サブカラー */
	}
	.txt-blue {
		color:#003f6c;
	}
	.txt-lightblue {
		color:#0086ff;
	}
	.txt-gray {
		color:#eeeeee;
	}
	.txt-lightgray {
		color:#f9f9f9;
	}
	.txt-green {
		color:#79b600;
	}
	.txt-yellow {
		color:#fbb03b;
	}
	.txt-pink {
		color:#f24966;
	}
	.txt-dblue {
		color:#1d2088;
	}
	.txt-orange {
		color:#ff8022;
	}
	.txt-black {
		color:#000;
	}
	.txt-white {
		color:#FFF;
	}
	.txt-red {
		color:#EA5D58;
	}
	.txt-dred {
		color:#c80019;
	}

/*-------------------------------------------------------


その他


--------------------------------------------------------*/
/*-------------------------------------------------------
 ポジション
--------------------------------------------------------*/	
	.absolute { position:absolute; }
	.relative { position:relative; }
	.fixed { position:fixed; }
	
/*-------------------------------------------------------
 clearfix
--------------------------------------------------------*/	
/*	.clearfix:after {
		height: 0;
		visibility: hidden;
		content: ".";
		display: block;
		clear: both;
	}*/
	.clearfix:after {
	    content: ".";
		display: block;
		height: 0;
		clear: both;
		visibility: hidden;
		overflow: hidden;/* 隙間対応 */
		font-size: 0.1em;/* 隙間対応 */
		line-height: 0;/* 隙間対応 */
	}
	.clearfix {
		_height: 1px;
		min-height: 1px;
		/*￥*//*/
		height: auto;
		overflow: hidden;
		/**/
	}

/*-------------------------------------------------------
 overflow
--------------------------------------------------------*/
	.overflow-scroll{
		overflow: auto;　　  /*tableをスクロールさせる*/
		white-space: nowrap; /*tableのセル内にある文字の折り返しを禁止*/
	}
	.overflow-scroll::-webkit-scrollbar{
		overflow:hidden;
		width:10px;
		background:#eee;
		-webkit-border-radius:3px;
		border-radius:3px;
	}
	.overflow-scroll::-webkit-scrollbar:horizontal{
		height:10px;
	}
	.overflow-scroll::-webkit-scrollbar-button{
	    display:none;
	}
	.overflow-scroll::-webkit-scrollbar-piece{
		background:#eee;
	}
	#scrollbar02::-webkit-scrollbar-piece:start{
		background:#eee;
	}
	.overflow-scroll::-webkit-scrollbar-thumb{
		overflow:hidden;
		-webkit-border-radius:3px;
		border-radius:3px;
		background:#333;
	}
	.overflow-scroll::-webkit-scrollbar-corner{
		overflow:hidden;
		-webkit-border-radius:3px;
		border-radius:3px;
		background:#333;
	}
 	.overflow-hidden {
		overflow:hidden;
  	}

/*-------------------------------------------------------


 印刷用CSS


--------------------------------------------------------*/	
	@media print{
	.printnone{
		display:none !important;	  
  	}
  	a[href]:after {
    	content: "" !important;
  	}
  	abbr[title]:after {
    	content: "" !important;
  	}
	}
	
/*-------------------------------------------------------


 CSSアニメーション


--------------------------------------------------------*/	
	
 	@keyframes show {
    from{
        opacity: 0;
    }
    to{
        opacity: 1;
    }
    }

    @-moz-keyframes show {
    from{
        opacity: 0;
    }
    to{
        opacity: 1;
    }
    }

    @-webkit-keyframes show {
    from{
        opacity: 0;
    }
    to{
        opacity: 1;
    }
    }