@charset "UTF-8";
@font-face {
  font-family: -apple-system, 'Helvetica Neue', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', Helvetica, '游ゴシック', Meiryo, sans-serif;
  src: local('Yu Gothic Medium');
}
* {
  margin:0;
  padding:0;

  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  -ms-box-sizing:border-box;
  -o-box-sizing:border-box;
  box-sizing:border-box;

  font:inherit;
  font-family:inherit;
  font-size:100%;
  font-style:inherit;
  font-weight:inherit;
  text-decoration:none;
  vertical-align:baseline;
}

html {
  width:100%;
  height:100%;
  font-size: 10px;
}

body{
  margin:0;
  font-family: -apple-system, 'Helvetica Neue', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', Helvetica, '游ゴシック', Meiryo, sans-serif;
  
  color:#333;
  
  font-weight: 500;
  font-size:14px;
  font-size:1.4rem;
  position:relative;
  

  /*スマホの回転による文字サイズの自動調節を防止する */
  -webkit-text-size-adjust:100%;
  -moz-text-size-adjust:100%;
  -ms-text-size-adjust:100%;
  -o-text-size-adjust:100%;
  text-size-adjust:100%;
}

.min {
  font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
}

article, aside, dialog, figure, footer, header, main, menu, nav, section {
  display:block;
}

ol,ul {
  list-style:none;
}

input, select {
  vertical-align:middle;
}

area{
  border:none;
  outline:none; 
}

input[type=submit], input[type=button], button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

table {
  border-collapse:collapse;
  border-spacing:0;
  empty-cells:show;
 /* table-layout: fixed; */
}

.clearfix:after {
  content:" ";
  display:block;
  clear:both;
}

.inblock-wrap {
  width:100%;
  position:relative;
  font-size:0;
}


/* ================================
    font-design
   ================================ */
strong, .strong {
  font-weight:700 !important;
}
small .small {
  font-size:80% !important;
}
.underline {
  text-decoration:underline !important; 
}

/* ================================
    position
   ================================ */
.abs {
  position: absolute;
  z-index:1;
}

.fixed {
  position: fixed;
  z-index:1;
}

/* ================================
    header-icon spanning
   ================================ */
i.header-icon {
  padding-right:0.5em;
}

a.disabled {
  pointer-events : none;
  cursor:default;
}

a.bl {
  display:block; 
}

/* ================================
    column
   ================================ */
.st {
	text-align: center;
	padding-bottom: 20px;
}