@charset "UTF-8";

@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 100;
  src: url(../fonts/NotoSerifCJKjp/NotoSerifCJKjp-ExtraLight.otf) format('opentype');
}
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 200;
  src: url(../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Light.otf) format('opentype');
}
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 400;
  src: url(../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Regular.otf) format('opentype');
 }
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 500;
  src: url(../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Medium.otf) format('opentype');
 }
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 600;
  src: url(../fonts/NotoSerifCJKjp/NotoSerifCJKjp-SemiBold.otf) format('opentype');
 }
@font-face {
   font-family: 'Noto Serif Japanese';
   font-style: normal;
   font-weight: 700;
  src: url(../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Bold.otf) format('opentype');
 }
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 900;
  src: url(../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Black.otf) format('opentype');
 }

*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

* {
  margin: 0;
  padding: 0;
  font-style: normal;
  /*
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", 'Yu Mincho medium', 'YuMincho Medium', "游明朝", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", "メイリオ", serif;
  */
  font-family: 'Noto Serif Japanese', serif;
}

html {
  font-size: 62.5%; /* 10px */
}

body {
  line-height: 1.714;
  width: 100%;
  color: #333333;
  background-color: #fff;
  word-break: break-all;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
}


/*----------------------------------------
	HTML5
----------------------------------------*/
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}


/*----------------------------------------
	Text
----------------------------------------*/
h1, h2, h3, h4, h5, h6 {
  margin:0 auto 1.6rem;
  padding:0;
  line-height: 1.4;
}

pre {
  margin: 1.5em 25px;
  padding: 1em;
  overflow: scroll;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",'Yu Gothic medium', YuGothic Medium, "游ゴシック", "メイリオ", sans-serif;
  line-height: 1.9;
}

blockquote {
  margin: 1.5em 1px;
  border: 5px solid #9f998f;
  color: #77471c;
  background-color: #f5f5f5;
  background-repeat: repeat-x;
  background-position: left bottom;
}

blockquote[title]::before {
  padding: 0.2em 10px 0.4em 10px;
  content: attr(title);
  display: block;
  color: #fff;
  background-color: #9f998f;
  font-weight: bold;
}

blockquote[cite]::after {
  margin: 0.5em 10px;
  content: attr(cite);
  display: block;
  text-align: right;
  font-size: 85%;
}

blockquote * {
  color: #333 !important;
}

em {
  color: #000;
}

pre em {
  font-weight: bold;
  background-image: none;
}

q {
  text-decoration: underline;
}

cite {
  display: block;
  text-align: right;
}

kbd {
  background-color: #f5f5f5;
  font-family: "Osaka|", monospace;
  text-transform: uppercase;
  padding: 0 0.4em;
  border: 1px solid #6a8eaa;
}

del {
  text-decoration: line-through;
}

ins {
  border-top: 10px solid #3cadd6;
  border-bottom: 10px solid #3cadd6;
  border: 7px solid #3cadd6;
  margin: 2em 1px;
  padding: 1px 0;
  display: block;
  text-decoration: none;
}

ins * {
  color: #666 !important;
}

abbr,
acronym {
  border-bottom: 1px dotted #aaa;
  cursor: help;
}

/*----------------------------------------
	List
----------------------------------------*/
ol li {
  margin-left: 1.5em;
}

li,
dt,
dd {
  list-style-type: none;
  list-style-position: outside;
}

ol li {
  list-style: decimal;
}

dt {
  font-weight: bold;
}


/*----------------------------------------
	Anchor
----------------------------------------*/
a {
  color: #4c9ed2;
  text-decoration: underline;
  transition: 0.6s;
}

a:hover {
  color: #009250;
  text-decoration: none;
}

a:hover img{
  opacity: 0.7;
}

@media screen and (min-width:768px){
  a[href^="tel:"] {
    pointer-events: none;
    text-decoration: none;
  }
}

/*----------------------------------------
	Table
----------------------------------------*/
table {
  width: 100%;
  border-collapse: collapse;
}

/*----------------------------------------
	Form
----------------------------------------*/
form {
  font-family: Arial, Helvetica, sans-serif;
}

fieldset,
legend {
  border: none;
}

legend {
  display: none;
}

input[type=text],
textarea {
  padding: 0.2em;
  border: 1px solid #d1d1d1;
  background-color: #fff;
}

input {
  line-height: 1.2;
}

select, input, textarea, button {
  vertical-align: middle;
  position: relative;
  *margin-right: 3px;
  top: 0;
}

input[type="checkbox"],
input[type="radio"] {
  border: none;
  top: -1px;
  top: 0\9;
  margin-right: 2px;
  margin-right: 0\9;
}

input[type=text]:focus,
textarea:focus {
  border: 1px solid #069;
  background-color: #fff;
}

input.button {
  padding: 0;
  border: none;
  background-image: none;
  vertical-align: top;
}

/*----------------------------------------
	Others
----------------------------------------*/
hr {
  border: none;
  border-top: 1px dotted #ccc;
}

img {
  max-width:100%;
  border: none;
  vertical-align: top;
}

img.alignleft {
  margin-right: 20px;
  width: 30%;
  height: auto;
  float: left;
}

img.alignright {
  margin-left: 20px;
  width: 30%;
  height: auto;
  float: right;
}

img.alignnone {
  display: block;
  margin: 0 auto;
  width: 70%;
  height: auto;
}

img.aligncenter {
  display: block;
  margin: 0 auto 40px;
  width: 100%;
  height: auto;
}


