/* リセット */
*{
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
h1,h2,h3,h4,h5,h6,p,address{
  font-weight: normal;
  font-style: normal;
  margin-bottom : 0px;
  font-size : 12px;
}
html, body{
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  animation: fadeIn 1s ease 0s 1 normal;
  -webkit-animation: fadeIn 1s ease 0s 1 normal;
  color : white;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
  line-height : 1.8em;
  min-width : 1100px;
}
#bg1{
  background-image : url(../img_common/bg1.png);
  background-repeat : repeat;
  background-attachment : scroll;
  background-position : 0% 0%;
  background-size : auto auto;
  background-origin : padding-box;
  background-clip : border-box;
  background-color : black;
}
@keyframes fadeIn {
  0% {
  opacity: 0}
100% {
  opacity: 1}
}
@-webkit-keyframes fadein {
  0% {
  opacity: 0}
100% {
  opacity: 1}
}
.osw{
  font-family: "Oswald", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}
ul{
  margin : 0;
  padding : 0;
}
/*
img{
  -webkit-touch-callout:none;
  -webkit-user-select:none;
  -moz-touch-callout:none;
  -moz-user-select:none;
  touch-callout:none;
  user-select:none;
}
*/

td{
  font-size: 100%;
  vertical-align : top;
  text-align : left;
  border:none;
}
.bigest{
  font-size : 150%;
  line-height : 1em;
  font-weight : 700;
}
.bigest3{
  font-size : 225%;
  line-height : 1em;
  font-weight : 700;
}
.bigest4{
  font-size : 300%;
  line-height : 1em;
  font-weight : 700;
}
.bigger{
  font-size : 125%;
}
.bigest2{
  font-size : 175%;
  line-height : 1em;
  font-weight : 700;
}
.smaller{
  font-size : 90%;
}
.small{
  font-size : 80%;
}
.futo{
  font-weight : 700;
}
.dan1{
  padding-left: 1em;
  text-indent: -1em;
}
.target{
  width : 100%;
  height : 0px;
}
.div_contents{
  vertical-align : top;
  text-align : left;
  font-size : 17px;
  min-width : 768px;
  max-width : 1100px;
}
.sen{
  margin-top : 20px;
  margin-bottom : 19px;
  height : 1px;
  width : 100%;
  border-top-width : 1px;
  border-top-style : dotted;
  border-left-width : 0px;
  border-right-width : 0px;
}
.topmar10{
  margin-top : 10px;
}
.topmar5{
  margin-top : 5px;
}
.topmar20{
  margin-top : 20px;
}
.topmar40{
  margin-top : 40px;
}
.topmar80{
  margin-top : 80px;
}
.topmar60{
  margin-top : 60px;
}
.topmar120{
  margin-top : 120px;
}
.topmar180{
  margin-top : 180px;
}
.img100per{
  width : 100%;
}
.titles{
  font-size : 300%;
  letter-spacing : 2px;
  text-align : center;
  font-weight : 700;
}
.bottom120{
  padding-bottom : 120px;
}
.bottom80{
  padding-bottom : 80px;
}
.medatsu1{
  padding-top : 40px;
  padding-left : 40px;
  padding-right : 40px;
  padding-bottom : 40px;
  border-style : solid;
  border-width : 1px;
  border-color : #dfcda4;
  background-color : white;
}
.midashi1{
  font-size : 200%;
  padding-bottom : 15px;
  border-left-width : 10px;
  border-left-style : solid;
  padding-left : 5%;
  border-bottom-width : 2px;
  border-bottom-style : solid;
  font-weight : bold;
}
.midashi2{
  padding-bottom : 15px;
  border-bottom-width : 2px;
  border-bottom-style : solid;
  font-size : 125%;
  font-weight : 700;
}
.btn,
a.btn,
button.btn{
  position: relative;
  display: inline-block;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  border-width : 1px 1px 3px;
  border-style : solid;
  border-color : #ffffff #ffffff #999999;
  width : 350px;
  padding-left : 20px;
  padding-right : 20px;
  padding-top : 20px;
  padding-bottom : 20px;
  font-family: "Noto Sans JP", serif;
  font-size : 110%;
}
a.btn-flat{
  overflow: hidden;
  padding : 1.2em;
  color : black;
  background : none 0% 0% / auto auto repeat scroll padding-box border-box #ebe9e2;
}
a.btn-flat span{
  position: relative;
}
a.btn-flat::before{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  -webkit-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  -webkit-transform: translateX(-96%);
  transform: translateX(-96%);
  background-image : linear-gradient(#dea701, #a47804);
  background-repeat : repeat;
  background-attachment : scroll;
  background-position : 0% 0%;
  background-size : auto auto;
  background-origin : padding-box;
  background-clip : border-box;
}
a.btn-flat:hover:before {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
}
.table100{
  width : 100%;
}
.tume{
  letter-spacing : -2px;
}
.stroke .border.top,
.stroke .border.bottom {
  width: calc(100% - 20px);
}
.stroke .border.right,
.stroke .border.left {
  height: calc(100% - 20px);
}
.stroke.is-animated .border {
  opacity: 1;
}
.stroke.is-animated .border.top,
.stroke.is-animated .border.bottom {
  animation: stroke-width 1.8s cubic-bezier(0.22, 1, 0.36, 1);
}
.stroke.is-animated .border.right,
.stroke.is-animated .border.left {
  animation: stroke-height 1.8s cubic-bezier(0.22, 1, 0.36, 1);
}
@keyframes stroke-width {
  0% {
  width: 0;
  opacity: 1;
}
100% {
  width: calc(100% - 20px);
  opacity: 1;
}
}
@keyframes stroke-height {
  0% {
  height: 0;
  opacity: 1;
}
100% {
  height: calc(100% - 20px);
  opacity: 1;
}
}
.youtube{
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  background-color : black;
  border-width : 1px 1px 1px;
  border-style : solid;
  border-color : #fff;
}
.youtube iframe{
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
/* ボタンのコンテナ */
.button-container {
  display: flex;
}
/* ボタンのスタイル */
/* ホバー時のスタイル */
@charset "utf-8";
.contact-buttons {
  display: flex;
  gap: 20px;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}
.footer{
  font-size : 80%;
  color : silver;
  background-color : black;
  padding-top : 120px;
  padding-bottom : 120px;
}
.grade1{
  background-image : linear-gradient(rgba(46, 46, 46, 0), rgba(46, 46, 46, 1));
  background-color : transparent;
}
.sp5{
  width : 5%;
}
.sp1{
  width : 1%;
}
.text_gold{
  color : #efb401;
}
.text_con{
  color : #f8bd01;
}
/* 通常時は不透明（100％） */
.text_right{
  text-align : right;
}
a img {
  opacity: 1;
  transition: opacity 0.3s ease;
}
/* ホバー時に20％透過（80％表示） */
a:hover img {
  opacity: 0.8;
}
