@charset "utf-8";

/*
 基本設定（タグ）
----------------------------------------------------------- */
* {
	padding: 0px;
	margin: 0px;
}

html {
	overflow-y: scroll;/*Firefoxでのズレ対策*/
}

body {
/*	font-family:"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif; */
/* sans-serifはsafari明朝体回避に必要 */
	font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3","メイリオ", Meiryo, "ＭＳ Ｐゴシック", Osaka, sans-serif;
	font-size:85%;
	color:#444;
	text-align:center;
	background-color:#f5f9fd;
  z-index: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: 100%;
	font-weight: normal;
	}

p,
li,
dt,
dl {
	line-height: 1.5;
}

ol,ul,li {
	list-style: none;
	}
	
img{
	border: 0px;
  max-width: 100%;
  height: auto;  
}
/*sup {
	vertical-align: top;
}*/

em {
	font-style:normal;
	font-weight:bold;
}


/*
 リンク装飾 
----------------------------------------------------------- */
a:link {
	color:#0066cc;
	text-decoration:none;
}

a:visited {
	color:#003399;
	text-decoration:none;
}

a:hover {
	color:#0066cc;
	text-decoration:underline;
}

a:active {
	color:#0066cc;
	text-decoration:underline;
}

/*
a:hover img {
	filter: alpha(opacity=80);
	-moz-opacity:0.80;
	opacity:0.80;
	}
*/
.over:hover{
  opacity: .7;
  text-decoration: none;
}
@media screen and (min-width : 641px){
  .over{
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    cursor: pointer;
  }
}

/*
 非表示
----------------------------------------------------------- */
.displayNone {
	display:none;
}

/*
 表示
----------------------------------------------------------- */
.for_pc{
  display:block;
}
.for_sp{
  display:none;
}
a.for_pc,
br.for_pc,
span.for_pc,
img.for_pc{
  display:inline;
}
a.for_sp,
br.for_sp,
span.for_sp,
img.for_sp{
  display:none;
}
.flex{
  display: -webkit-box;
  display: -ms-flex;  
  display: -webkit-flex;
  display: flex;
}
@media screen and (max-width : 640px){
  .for_pc{
      display:none;
    }
    .for_sp{
      display:block;
    }
    a.for_pc,
    br.for_pc,
    span.for_pc,
    img.for_pc{
      display:none;
    }
    a.for_sp,
    br.for_sp,
    span.for_sp,
    img.for_sp{
      display:inline;
    }
}

/*
 回り込み解除
----------------------------------------------------------- */
ul::after,
.clearfix:after {  
  content:"";
  display:block;
  clear:both; 
}

.clear{
  clear:both; 
  height: 0;
}

/*基本設定（表組み）
----------------------------------------------------------- */
table {
	border-top: solid 1px #666666;
	border-left: solid 1px #666666;
	border-collapse: collapse;
}

th,
td {
	padding: 7px;
	border-right: solid 1px #666666;
	border-bottom: solid 1px #666666;
	line-height: 1.3;
}

th {
	font-weight: normal;
	text-align:left;
}




/*
右寄せ左寄せ
-----------------------------------------------------------*/
.floatLeft {
	float:left;
}

.floatRight {
	float:right;
}

/*
　カレンダー
-----------------------------------------------------------*/
.bgSat {
	background-color:#eef4fc;
}

.bgSun {
	background-color:#fcf9e8;	
}

/*
　背景色
-----------------------------------------------------------*/
.bgWhite {
	background-color:#FFF;
}

.bgGray01 {
	background-color:#666;
}

.bgGray02 {
	background-color:#e6e6e6;
}

.bgGray03 {
	background-color:#f5f5f5;
}

.bgGray04 {
	background-color:#c0c0c0;
}

.bgBlue01 {
	background-color:#e1ebf8;
}

.bgBlue02 {
	background-color:#f5f9fd;
}

.bgBlue03 {
	background-color:#cee5fd;
}

.bgBlue04 {
	background-color:#3475d0;
	color: #FFF;
}

/*
テキスト
-----------------------------------------------------------*/
.textLeft {
	text-align:left;
}

.textCenter {
	text-align:center;
}

.textRight {
	text-align:right;
}

.textBold {
	font-weight:bold;
}

.textDecoration {
	text-decoration:underline;
}

.textNormal {
	font-weight:normal;
}

.textSize75{
	font-size:75%;
}

.textSize80{
	font-size:80%;
}

.textSize85{
	font-size:85%;
}

.textSize90{
	font-size:90%;
}

.textSize110{
	font-size:110%;
}

.textSize125{
	font-size:125%;
}

.textSize140{
	font-size:140%;
}

.textSize200{
	font-size:200%;
}

.textBlue01 {
	color:#336699;
}

.textBlue02 {
	color:#0066cc;
}

.textRed01 {
	color:#F00;
}

.textRed02 {
	color:#c90200;
}

.textBlack01 {
	color:#333;
}



/*
 ボーダーなし
-----------------------------------------------------------*/
.borderTopNo {
	border-top:none;
}

.borderLeftNo {
	border-left:none;
}

.borderRightNo {
	border-right:none;
}

.borderBottomNo {
	border-bottom:none;
}

/*
マージン調整（必要に応じて追加）
----------------------------------------------------------- */
.marginTop03px {
	margin-top: 3px;
}

.marginTop05px {
	margin-top: 5px;
}

.marginTop10px {
	margin-top: 10px;
}

.marginTop15px {
	margin-top: 15px;
}

.marginTop20px {
	margin-top: 20px;
}

.marginTop25px {
	margin-top: 25px;
}

.marginTop30px {
	margin-top: 30px;
}

.marginTop35px {
	margin-top: 35px;
}

.marginTop40px {
	margin-top: 40px;
}

.marginTop50px {
	margin-top: 50px;
}

.marginTop60px {
	margin-top: 60px;
}

.marginTop70px {
	margin-top: 70px;
}

.marginTop110px {
	margin-top: 107px;
}

.marginLeft05px {
	margin-left: 5px;
}

.marginLeft10px {
	margin-left: 10px;
}

.marginLeft15px {
	margin-left: 15px;
}

.marginLeft20px {
	margin-left: 20px;
}

.marginBottom10px {
	margin-bottom: 10px;
}

.marginBottom20px {
	margin-bottom: 20px;
}

.marginBottom30px {
	margin-bottom: 30px;
}


/*
パディング調整（必要に応じて追加）
----------------------------------------------------------- */
.paddingTop03px {
	padding-top: 3px;
}

.paddingTop05px {
	padding-top: 5px;
}

.paddingTop10px {
	padding-top: 10px;
}

.paddingTop15px {
	padding-top: 15px;
}

.paddingTop20px {
	padding-top: 20px;
}

.paddingTop25px {
	padding-top: 25px;
}

.paddingTop30px {
	padding-top: 30px;
}

.paddingTop35px {
	padding-top: 35px;
}

.paddingBottom10px {
	padding-bottom:10px;
}


/*幅設定（必要に応じて追加）
----------------------------------------------------------- */
.width05per {
	width: 5%;
}

.width08per {
	width: 8%;
}
.width09per {
	width: 9%;
}
.width10per {
	width: 10%;
}
.width12per {
	width: 12%;
}
.width13per {
	width: 13%;
}
.width15per {
	width: 15%;
}
.width14per {
	width: 14%;
}
.width17per {
	width: 17%;
}
.width18per {
	width: 18%;
}
.width20per {
	width: 20%;
}
.width23per {
	width: 23%;
}
.width25per {
	width: 25%;
}

.width30per {
	width: 30%;
}

.width35per {
	width: 35%;
}

.width40per {
	width: 40%;
}

.width45per {
	width: 45%;
}

.width48per {
	width: 48%;
}

.width50per {
	width: 50%;
}

.width55per {
	width: 55%;
}

.width58per {
	width: 58%;
}

.width60per {
	width: 60%;
}

.width65per {
	width: 65%;
}

.width70per {
	width: 70%;
}

.width75per {
	width: 75%;
}

.width80per {
	width: 80%;
}

.width85per {
	width: 85%;
}

.width90per {
	width: 90%;
}

.width95per {
	width: 95%;
}

.width100per {
	width: 100%;
}


/*CMS自由入力の調整
----------------------------------------------------------- */
#containerMain .bodyText ol li {
	margin-left: 2em;
	list-style: decimal;
}

#containerMain .bodyText ul li {
	margin-left: 1.5em;
	list-style:disc;
}

#containerMain .bodyText p {
	margin-top:10px;
}

#containerMain .bodyText h1 {
	display: block;
	font-size: 24pt;
	font-weight: bold;
	margin: 14pt 0;
}

#containerMain .bodyText h2 {
	display: block;font-size: 18pt;font-weight: bold;margin: 14pt 0;
}

#containerMain .bodyText h3 {
	display: block;
	font-size: 13.55pt;
	font-weight: bold;
	margin: 14pt 0;
}

#containerMain .bodyText h4 {
	display: block;
	font-weight: bold;
	margin: 14pt 0;
}

#containerMain .bodyText h5 {
	display: block;
	font-size: 10pt;
	font-weight: bold;
	margin: 14pt 0;
}

#containerMain .bodyText h6 {
	display: block;
	font-size: 7.55pt;
	font-weight: bold;
	margin: 14pt 0;
}

#containerMain .bodyText blockquote {
	display: block;
	margin: 14pt 30pt;
}

#containerMain .bodyText hr {
	border-style: inset;
	border-width: 1px;
	display: block;
	margin-bottom: 0.5em;
	margin-top: 0.5em;
	overflow: hidden;
	text-align: center;
	zoom: 1;
	}

#containerMain .bodyText pre {
	display: block;
	font-family: monospace;
	font-size: 10pt;
	white-space: pre;
	}
	
#containerMain .bodyText address {
	display: block;
	font-style: italic;
	}	




/*
 smart
----------------------------------------------------------- */
@media screen and (max-width : 640px){

img{
	border: 0px;
	max-width: 100%;
	height: auto;
	/*width auto;　*/
}

}

/* ===============================================
# modal_translation
=============================================== */
.modal_translation .modaal-container{
  max-width: 900px;
  overflow: hidden;
  background: none;
  box-shadow: none;
}
.modal_translation .modaal-content{
  border-radius: 10px;
  border: solid 1px #003399;
  box-shadow: 0px 0px 32px 0px rgba(0, 0, 0, 0.35);  
  background: #fff;
}
.modal_translation .modaal-content-container{
  padding: 0;
}
#area_translation{
  padding: 50px 32px 38px;
  color: #003399;
  font-size: 18px;
}
#area_translation .ttl{
  text-align: center;
  font-size: 31px;
  margin-bottom: 20px;
  line-height: 1;
}
#area_translation .ttl img{
  width: 40px;
  vertical-align: middle;
  margin-right: 20px;
}
#area_translation .btn{
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 20px;
}
#area_translation .btn li{
  width: 192px;
}
#area_translation .btn li.ok{
  margin-left: 15px;
}
#area_translation .btn li a{
  display: block;
  color: #fff;
  text-align: center;
  background: #cccccc;
  padding: 9px 10px;
}
#area_translation .btn li.ok a{
  background: #014099;
}

@media screen and (max-width :768px){
  .modal_translation .modaal-content{
    border-radius: 5px;
    box-shadow: 0px 0px 25px 0px rgba(0, 0, 0, 0.35);  
  }
  #area_translation{
    padding: 35px 22px 25px;
    font-size: 15px;
  }
  #area_translation .ttl{
    font-size: 25px;
  }
  #area_translation .ttl img{
    width: 30px;
    margin-right: 10px;
  }
  #area_translation .btn{
    margin-top: 10px;
  }
  #area_translation .btn li{
    width: 48%;
  }
  #area_translation .btn li.ok{
    margin-left: 4%;
  }
  #area_translation .btn li a{
    padding: 10px 10px;
  }
}