@charset "utf-8";
/*
ページごとの設定や、位置調整、テキスト装飾などで使用する汎用的なものとを記述します。
Anything used for general purpose such as setting for every page, position adjustment, and text decoration will be written.

接頭辞はUtilityの頭文字を取って【u_】とします。
Prefix will take the "Utility" first letter and use it as "u_".

clearfixのみ、例外的に接頭辞をつけてません。
This not apply to "clearfix".

フォントサイズはremで指定します。
"rem" will be used for font-size.
*/

.u_mat0 { margin-top:0; }
.u_mat5 { margin-top:5px; }
.u_mat10 { margin-top:10px; }
.u_mat20 { margin-top:20px; }
.u_mat30 { margin-top:30px; }
.u_mat40 { margin-top:40px; }
.u_mat50 { margin-top:50px; }

.u_mab0 { margin-bottom: 0; }
.u_mab5 { margin-bottom: 5px; }
.u_mab10 { margin-bottom: 10px; }
.u_mab15 { margin-bottom: 15px; }
.u_mab20 { margin-bottom: 20px; }
.u_mab25 { margin-bottom: 25px; }
.u_mab30 { margin-bottom: 30px; }
.u_mab40 { margin-bottom: 40px; }
.u_mab50 { margin-bottom: 50px; }
.u_mab60 { margin-bottom: 60px; }
.u_mab70 { margin-bottom: 70px; }
.u_mab80 { margin-bottom: 80px; }
.u_mab90 { margin-bottom: 90px; }
.u_mab100 { margin-bottom: 100px; }

.u_mar0 { margin-right:0; }
.u_mar5 { margin-right:5px; }
.u_mar10 { margin-right:10px; }
.u_mar20 { margin-right:20px; }
.u_mar30 { margin-right:30px; }
.u_mar40 { margin-right:40px; }
.u_mar45 { margin-right:45px; }
.u_mar50 { margin-right:50px; }

.u_ALcenter { text-align: center; }
.u_ALright { text-align: right; }
.u_ALleft { text-align: left; }
.u_ALtop { vertical-align: top; }
.u_ALmiddle { vertical-align: middle; }
.u_ALbottom { vertical-align: bottom; }

.u_float_left { float: left; }
.u_float_right { float: right; }

.u_lineheight { line-height: 2;}

.u_red { color: #F00; }
.u_blue { color: #0286c6; }
.u_black { color: #000; }
.u_white { color: #FFF; }
.u_yellow { color: #f8e187; }

.u_bold { font-weight: bold; }
.u_underline { text-decoration: underline; }
.u_strike { text-decoration: line-through; }
.u_fw_normal { font-weight: normal; }

.u_img_floatL { float: left; margin-right: 20px; }
.u_img_floatR { float: right; margin-left: 20px; }

.u_fs11 { font-size: 1.1rem; }
.u_fs12 { font-size: 1.2rem; }
.u_fs13 { font-size: 1.3rem; }
.u_fs15 { font-size: 1.5rem; }
.u_fs16 { font-size: 1.6rem; }
.u_fs17 { font-size: 1.7rem; }
.u_fs18 { font-size: 1.8rem; }
.u_fs19 { font-size: 1.9rem; }
.u_fs20 { font-size: 2.0rem; }
.u_fs21 { font-size: 2.1rem; }
.u_fs22 { font-size: 2.2rem; }
.u_fs23 { font-size: 2.23rem; }
.u_fs24 { font-size: 2.4rem; }
.u_fs30 { font-size: 3rem; }

.u_inline { display: inline-block; }

.u_nowrap { white-space: nowrap; }

.u_disable { pointer-events: none; }

.u_flex { display: flex;}
.u_juscenter { justify-content: center;}
.u_indent { text-indent: 5em;}
.u_indent04 { text-indent: 1em;}
.u_indent_en { padding-left: 2em;}

.super{ 
  vertical-align: super;
  font-size: 1.1rem;
}

.u_bt {border-top: 2px solid #ddd;}
#top .u_flex,
#contact .u_flex{
  justify-content:center; 
}
#top .u_flex p,
#contact .u_flex p{
  margin: 0 10px;
}
#top .u_flex p:last-child,
#contact .u_flex p:last-child{
  margin-left: 40px;
}

#articles_of_association .u_indent02{
  padding-left: 9rem;
  text-indent: -3rem;
}

#articles_of_association .u_indent03{
  padding-left: 3.5rem;
  text-indent: -3.5rem;
}

.u_sp {
  display: none!important;
}

/*----------------------------------------------
	.hidden
---------------------------------------------*/
.u_pc_view{
  display: block;
}
.u_sp_view {
  display: none;
}
.u_320_view{
  display: none;
}
.u_320_hidden{
  display: inherit;
}
@media screen and (min-width: 768px) {
    .u_hidden_md_min {
      display: none;
    }
}
@media screen and (max-width: 767px) {
    .u_hidden_md_max {
      display: none;
    }
}
@media screen and (max-width: 768px){
  .u_pc_view,
  .u_sp_view{
    display: none;
  }
}
@media screen and (max-width: 640px){
  .u_sp_view{
    display: inherit;
  }
  .u_320_hidden{
    display: inherit;
  }
}
@media screen and (max-width: 321px){
  .u_sp_view{
    display: inherit;
  }
  .u_320_view{
    display: inherit;
  }
  .u_320_hidden{
    display: none;
  }
}
/*----------------------------------------------
	.u_clear
---------------------------------------------*/
.u_clear{
  clear:both;
}
/*----------------------------------------------
	.clearfix
---------------------------------------------*/
.clearfix:after {
    content:" ";
    display:block;
    clear:both;
}

.u_greeting_president_detail {
    padding-top: 152px;
    margin-top: 0px;
}

/*----------------------------------------------
	#data ul , ol
---------------------------------------------*/
#data ul:nth-child(3) li,#en_data ul:nth-child(3) li {
  list-style: none;
  text-indent: 3rem;
}
#data ol li,#en_data ol li {
  list-style-type: none;
	counter-increment: cnt;
}
ol li::before {
	content: "【" counter(cnt) "】 ";
}
#data ol p,#en_data ol p {
  text-indent: 1.5em;
}

#data ul li,#en_data ul li {
  list-style-type: none;
}



#data figure, #en_data figure {
  margin: 1em 30px!important;
}