@charset "utf-8";
html { font-size: 16px; }
@media screen and (min-width: 750px) { html { font-size: 14px; } }
html * { box-sizing: border-box; }
body {
	margin: 0;
	background: url(../images/bg.png);
	font-family: sans-serif;
        width:100%;
}
h1 {
	font-family: 'Bitter', serif;
	font-size: 30px;
	min-width:200px;
}
.kensaku { text-indent: -9999px;}
h2 {
	font-family: 'Bitter', serif;
	font-size: 30px;
	padding:10px;
	margin: 35px 0 20px 0;
	background: #ffffff;
	border-bottom: 4px solid #2097b6;
	border-left:7px solid #2097b6;
	color:#209700;
	box-shadow:0px 3px 7px 0px rgba(0,0,0,0.3);
}
h3{
	font-family: 'Bitter', serif;
	font-size: 30px;
	min-width: 50px;
}
@media all and (-ms-high-contrast:none){ *::-ms-backdrop, .nagasa1{ width:100%; } }
@supports (-ms-ime-align:auto) { .nagasa1{ width:100%; } }
@media screen and (-webkit-min-device-pixel-ratio:0) { .nagasa1{ width:100%; } }
.kagetoiro1{
	padding:10px;
	background: #ffffff;
	border-bottom: 4px solid #2097b6;
	border-left:7px solid #2097b6;
	border-radius: 40px;
	color:#209700;
	box-shadow:0px 3px 7px 0px rgba(0,0,0,0.3);
	width:250px;
}
.kagetoiro2{
	padding:10px;
	background: linear-gradient(45deg, #ff0000,#ffffff);
	border-left:15px solid #ff0000;
	color:#ffffff;
	width:100%;
	border-radius: 40px;
	box-shadow:0px 3px 7px 0px rgba(0,0,0,0.3);
}
.kagetoiro3{
	padding:10px;
	background: linear-gradient(45deg, #ffa500,#ffffff);
	border-left:15px solid #ffa500;
	color:#ffffff;
	width:100%;
	border-radius: 40px;
	box-shadow:0px 3px 7px 0px rgba(0,0,0,0.3);
}
@media only screen and (max-width:900px){.kagetoiro3{ background: linear-gradient(45deg, #ffa500,#FFCE73);} }
.kagetoiro4{
	padding:10px;
	background: linear-gradient(45deg, #0000ff,#ffffff);
	border-left:15px solid #0000ff;
	color:#ffffff;
	border-radius: 40px;
	box-shadow:0px 3px 7px 0px rgba(0,0,0,0.3);
}
h4{
	padding:3px;
	border-bottom: 4px solid #2097b6;
	border-left:0px solid #2097b6;
	margin: 0.5vw;
	color:#209700;
	font-family: 'cursive', cursive;
	font-size: 20px;
}
h5{
	font-size: 20px;
	margin: 1vw;
	color:#209700;

}
h6{
	font-size: 15px;
	margin: 1vw;
}

h7{
 	font-family: 'cursive', cursive;
	font-size: 20px;
	margin: 1vw;
	color:#209700;
}
p{
	margin: 10px;
	color:#000000;
}

.kasane{
   position: relative;
}
.midasi1:first-letter {
  font-size: 150%;
  color: #eb6100;
}
.midasi2 {
  position: relative;
  padding: 1rem 1rem calc(1rem + 10px);
  background: #fff100;
}
.midasi2:before {
  position: absolute;
  top: -7px;
  left: -7px;
  width: 99.5%;
  height: 99%;
  content: '';
  border: 3px solid #000;
}
@media screen and (max-width: 900px) { .md2mozi{font-size: 3.3vw;}}

.midasi3 {
  font-size: 3.4rem;
  font-style: italic;
  letter-spacing: .1em;
  color: #fff;
  text-shadow: -4px 3px 0 #fa4141, -8px 6px 0 #000;
}

.midasi4 {
  position: relative;
  display: inline-block;
  padding: 0 45px;
}
.midasi4:before, .midasi4:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 44px;
  height: 8px;
  border-radius: 50px 50px 50px 50px;
  background-color: red;
  -webkit-transform: rotate(-60deg);
  transform: rotate(-60deg);
}
.midasi4:before {
  left:0;
}
h1:after {
  right: 0;
}
.midasi5{
  font-size:3vw;
  font-weight: bold;
  padding: 0.2em 0.5em;
  margin-top: 10px;
  margin-left: 8px;
  margin-right: 5px;
  outline: 3px solid #4c9ac0;
  outline-offset: 5px;
  background: linear-gradient(-45deg, transparent 0 20px, #fff 20px calc(100% - 20px), transparent calc(100% - 20px)),
              repeating-linear-gradient(-45deg, #4c9ac0 0 2px, #fff 2px 6px);
}
@media screen and (max-width: 900px) { 
  .midasi5 {
    font-size:4vw;
    padding: 0.2em 0.8em;
    margin-top: 10px;
  }
}

/* ヘッダー */
header {
	background: url(../images/930.jpg);
        background-repeat: no-repeat;
        background-position: left top;
        background-size: 100% ;
        min-width:100%;
}
.header-container { padding: 4vw 20px 5vw 20px; }
.header-logo {
	list-style: url('/media/examples/rocket.svg');
	font-size: 4vw;
	font-weight:900;
	font-family: 'Bitter', serif;
	color: #ffffff;
	text-shadow:  2px  2px 10px #777 ,
                     -2px  2px 10px #777 ,
                      2px -2px 10px #777 ,
                     -2px -2px 10px #777;
}
.header-logo img {
	position: absolute;
	margin: 1px 0 0 0;
	width: 7vw;
	height: 6vw;
}

.float_clear{ clear: both; }

@media all and (-ms-high-contrast:none){
      *::-ms-backdrop, .header-logo img { position: absolute;
                                          margin: -10px 0 0 0;
                                        }
}
@supports (-ms-ime-align:auto) {
       .header-logo img { position: absolute;
                          margin: -10px 0 0 0;
                        }
}
/* ナビゲーション */
  nav {
	font-size: 1.5vw;
        font-weight: 100;
	background: linear-gradient(-60deg, #ffff00, #7fffd4);
        min-width:100%;
  }
.nav-container { padding: 0 0 0 3%; }
@media screen and (min-width: 768px) {
	nav {
		font-size: 1.5vw;
                font-weight: 600;
                min-width:100%;
	}
       .nav-container { padding: 0 20px 0 6%; }
}
.globalnav {
	overflow: hidden;
	margin: 0;
	padding: 0;
	list-style: none;
}
.globalnav li {
	float: left;
	width: 15.5%;
}
.globalnav li a {
	display: block;
	padding: 10px 0;
	border-bottom: 8px solid #ffffff;
	text-decoration: none;
	text-align: center;
	line-height: 100%;
	color: #483d8b;
}
.globalnav li a:hover,
.globalnav li a.current {
	border-bottom: 8px solid #7bae34;
	color: #ff0000;
}
/* フッター */
footer { }
.footer-container {
	padding: 20px;
	background: #000000;
}
.copyright {
	margin: 0;
	font-size: 0.8rem;
	color: #ffffff;
}
/* メインコンテンツレイアウト部分 */
main { }
.main-container {
	padding: 0 0 40px 0;
	background: url(../images/ht-bg-pattern.png);
}
.maincol {
	margin: 0;
	padding: 0 0 30px 0;
	width: 98%;
}
@media screen and (min-width: 900px) {
	.main-container { overflow: hidden; }
	.maincol {
		float: left;
		margin: 0 20px 0 0px;
		width: 71%;
	}
	.maincol-container { margin-left: 5%; }
}
.video {
       position: relative; 
       height: 0;
       padding: 30px 0 55% 0;
       overflow: hidden;
}
.video iframe {
       position: absolute;
       top: 30px;
       left: 3vw;
       width: 90%;
       height: 90%;
}
.video2 iframe { margin: 15px 20px 50px 30px; }
.map {
       position: relative; 
       height: 0;
       padding: 30px 0 56.25%;
       overflow: hidden;
}
.map iframe {
       position: absolute;
       top: 0;
       left: 0;
       width: 100%;
       height: 100%;
}
/* サイドバー */
.sidebar {
	padding: 20px 0 20px 0;
        float: right;
	margin: 0 4% 0 0px;
	width: 21%;
}
.sidebar h3 {
	margin: 0 0 20px 0;
	font-size: 20px;
	color: #7bae34;
}
.subnav {
	margin: 0;
	padding: 0;
	list-style: none;
}
.subnav li {
        padding: 0px;
	border-bottom: 1px dashed #000000;
}
.subnav li a {
	text-decoration: none;
	color: #000000;
}
.subnav li a:hover,
.subnav li a.current { color: #7bae34; }


.subnav table {
	font-weight: none;
	font-family: none;
	margin: 0;
        padding: 0;
}
.subnav table th {
	font-size: 15px;
	border: solid 1px black;
	width:30px;
	min-width:30px;
	height:auto;
	background: #ffffff;
        color: #000000;
}
.subnav table td {
	font-size: 15px;
	border: solid 1px black;
	min-width: 50px;
        color: #000000;
}
.defaultlist
,.defaultlist li{
	padding:0;
	margin:0 8vw 50px 8vw;
}
.defaultlist li{
	list-style-type:none !important;
	list-style-image:none !important;
	margin: 5px 0px 5px 0 !important;
}
 
.list9{ counter-reset:li;  }
.list9 li{
	position:relative;
	display: block;
	padding:5px 0px 5px 50px; 
	background: #ffffff;
	border: 2px solid #ffffff;
	border-radius: 2px;
	margin-left:-15px !important;
	height: 41px; 
}
@media screen and (max-width: 900px) {.list9 li p{ font-size:15px; } }
li.list9-count:after{
	counter-increment: li;
	content: counter(li)"位";
	position: absolute;	
	left: 0px;
	top:  0px;
	background: #FFD700;
	height: 33px;
	width: 50px;
	line-height: 35px;
	border: 2px solid #FFD700;
	text-align: center;
	font-weight: bold;
	border-radius: 2px;
        color:#FF0000;
}
li.list9-count:before{
	content:''; 
	display:block; 
	position:absolute; 
	box-shadow: 0 0 2px 2px rgba(255,255,255,0.2) inset;
	top:0px; 
	left:54px; 
	height:0; 
	width:0; 
	border-top: 19px solid transparent;
	border-right: 7px solid transparent;
	border-bottom: 19px solid transparent;
	border-left: 30px solid #FFD700;
}
@media screen and (min-width: 900px) {
	.column1 h3 { font-size: 2rem; }
	.sub-nav li { padding: 2px;}
}
@media screen and (max-width: 900px) {
	.sidebar {
		float: none;
                margin: 20px auto;
		width: 75%;
	}
}
/* メインコンテンツ */
.news-contents {
	margin: 0;
	padding: 0;
	list-style: none;
}
.news-contents li {
	overflow: hidden;
	margin: 0 0 10px 0;
	padding: 10px;
	border: 1px solid #dadada;
}
.news-contents li img {
	float: left;
	margin-right: 10px;
}
.news-contents li p { margin: 0; }
.box1 {
	padding: 0.5em 1em;
	margin: 2em 0;
	font-weight: bold;
	color: #6091d3;/*文字色*/
	background:  #ffffff;
	border: solid 3px #000000;/*線*/
	border-radius: 10px;/*角の丸み*/
	min-width:250px;
}
.box2{
	border:3px solid #000000;
	padding: 5px;
	width:240px;
	height:100px;
	background: #ffffff;
	color:#000000;
	text-align:center;
	display:flex;
	align-items:center;
	justify-content:center;
	box-shadow:0px 3px 10px 2px rgba(0,0,0,0.3);
	transition: all 0.1s ease-in;
}
.box2:hover{
	filter: brightness(120%);
	transform: scale(1.25);
}
.backimg1 {
	border: none;
	background: url(../images/undoukai2.jpg);
	color:#000000;
	text-shadow:  2px  2px 10px #fff ,
	             -2px  2px 10px #fff ,
	              2px -2px 10px #fff ,
	             -2px -2px 10px #fff;
}
.backimg2 {
	border: none;
	background: linear-gradient(-20deg,  #ffffff, #fde6ec);
	color:#000000;
	text-shadow:  2px  2px 10px #fff ,
	             -2px  2px 10px #fff ,
	              2px -2px 10px #fff ,
	             -2px -2px 10px #fff;
}
.box3 {
	padding: 1px 25px;
	margin: 2px 0;
	color: #232323;
	background: #ffffff;
	font-size: 20px;
	border-radius: 10px;/*角の丸み*/
	min-width:250px;
}
.box4 {
	padding: 0.5em 1em;
	margin: 2em auto;
	font-weight: bold;
	color: #6091d3;/*文字色*/
	background: #ffffff;
	border: solid 3px #6091d3;/*線*/
	border-radius: 10px;/*角の丸み*/
}

@media screen and (max-width: 900px) {
   #box-sidebar {
	margin: 2em -50px;
        width:350px;
   }
}
.boxseigyo{ min-width:250px;}
.event-contents{
	display: flex;
	list-style: none;
	margin: 0 0 0 5px;
	padding: 0px 0px 0px 0px;
}
.event-contents li{
	flex: 0 0 22.3vw;
	display: flex;
	padding:10px 10px 25px 10px;
	margin: 0 5px 0 0;
	flex-flow: column;
	overflow:hidden;
	border: 1px solid #dadada;
	border-radius:10px;
	background: #ffffff;
	box-shadow:0px 3px 10px 2px rgba(0,0,0,0.3);
	word-break:break-all;
        max-width:396px;
	min-width:150px;
}
.event-contents h4{
	font-size:1.4vw;
	white-space: nowrap;
}
@media screen and (max-width: 900px) {
   .event-contents{
       display: block;
       margin: 0 ;
   }
   .event-contents li{
      margin: 10px 0 0 0;
      max-width:none;
      min-width:350px;
   }
   .event-contents h4{
      font-size:22px;
      white-space: nowrap;
   }
   .maincol-container h3{ min-width:200px; }
}
/*
@media all and (-ms-high-contrast:none){ *::-ms-backdrop, .event-contents li { flex: 0 0 19.6vw; }}
@supports (-ms-ime-align:auto) { .event-contents li { flex: 0 0 21vw; }}
   .event-contents dl{ margin: 10px 0 0 10px; }
   .event-contents dt{ font-size: 20px; }
   .event-contents dd{
	margin: 0 0 13px 20px;
	font-size: 1.1vw;
	white-space: nowrap;
}
*/
@media screen and (max-width: 900px) { .event-contents dd{font-size: 17px;}}
table {
	font-weight: bold;
	font-family: 'Bitter', serif;
	margin: 0 0 0 0.5vw;
	font-size: 18px;
}
table th {
	border: solid 1px black;
	width:300px;
	min-width:100px;
	height:70px;
	background: #ffffff;
}
table td {
	font-size: 25px;
	border: solid 1px black;
	min-width:200px;
}
.naganawa{}

.naganawa .mspace{padding:0 30px 0 30px;}
@media only screen and (max-width:900px){.naganawa .mspace{padding:0 0 0 0;} }

.naganawa table {
	font-weight: bold;
	margin: 0;
	font-size: 18px;
}
.naganawa table th {
	font-size: 20px;
	border: solid 1px black;
        white-space: nowrap;
	width:initial;
	max-width:500px;
	min-width:20px;
	height:70px;
}
.naganawa table td {
        font-size: 20px;
        color:black;
        border: solid 1px black;
	width:100%;
        max-height: initial;
        min-height: initial;
}

@media only screen and (max-width:900px){.naganawa table td { font-size: 3.0vw;}}
.tategaki{ writing-mode: vertical-rl; }
.tategaki2{ writing-mode: none; }@media only screen and (max-width:900px){.tategaki2{ writing-mode: vertical-rl; }}
.kaigyo{ display: inline-block; }
.doga h5{ line-height: 17px; }
.doga h6{ line-height: 17px; }
.sanjo1 table{ width:99%;}
.sanjo1 table th{
	height:100px;
	width: 33.3%;
	font-size: 17px;
	white-space: nowrap;
}
.sanjo2 table th{
	height:70px;
	white-space: nowrap;
}
@media only screen and (max-width:900px){
    .sanjo1 table { margin: 0 auto; }
    .sanjo1 table th{
       display: block;
       margin: 5px 0 0 0;
       font-size: 15px;
       width: 91vw;
       height: 110%;
    }
    .sanjo2 table {
       border: solid 2px #ffffff;
       margin: 0 auto;
    }
    .sanjo2 table th{
       display:block;
       margin: 5px 0 0 0;
       width: 70vw;
       Height: 110%
    }   
    .br-sp { display:none; }
}
@media only screen and (min-width:900px){.unbr-sp {display:none;}}
.taikyo { }
.taikyo table{
	font-weight: bold;
	font-family: 'Bitter', serif;
	border: solid 2px #ffffff;
	border-spacing: 0;
	border-collapse: collapse;
	background:#ffffff;
}
.taikyo table th {
	max-width:200px;
	min-width:150px;
	height:40px;
	border-left: 1px solid #ffffff;
	border-bottom: 1px solid #CEF6F5;
	border-top: 1px solid #CEF6F5;
	border-right: 1px solid #CEF6F5;
}
.taikyo table td {
	min-height:10px;
	min-width: 0;
	font-size: 18px;
}
@media only screen and (max-width:750px){
  .taikyo table th {
	max-width:80px;
	min-width:50px;
	height:40px;
	border-left: 1px solid #ffffff;
	border-bottom: 1px solid #CEF6F5;
	border-top: 1px solid #CEF6F5;
	border-right: 1px solid #CEF6F5;
  }
  .taikyo table td {
	min-height:10px;
	min-width: 0;
	font-size: 15px;
  }
}
.mazin1{ padding:0 10px 0 10px; }
.mazin2{ padding:5px 0 0 0; }
.wakusen1{
	border-bottom: 1px solid #CEF6F5;
	border-top: 1px solid #CEF6F5;
	border-right: 1px dashed #CEF6F5;
	border-left: 1px dashed #CEF6F5;
}
.wakusen2{
	border-bottom: none;
	border-top: none;
	border-right: none;
	border-left: none;
}
.ayumi table{
	font-weight: bold;
	font-family: 'Bitter', serif;
	border: solid 1px #ffffff;
	border-spacing: 0;
	border-collapse: collapse;
	background: #ffffff;
}
.ayumi table th{
	border: 1px solid #ffffff;
	background: #e4f5f7;
	font-size: 18px;
	min-width:15px;
	height:40px;
	white-space: nowrap;
}
.ayumi table td{
	width:400vw;
	border: 1px solid #ffffff;
	border-bottom: 1px solid #e4f5f7;
	font-size: 18px;
	padding:0 10px 0 10px;
}
.chuigaki table{
	font-weight: bold;
	font-family: 'cursive', cursive;
	border: solid 1px #ffffff;
	border-spacing: 0;
	border-collapse: collapse;
	background: #ffffff;
        color: #000000;
}
.chuigaki table th{
	border: 1px solid #ffffff;
	background: #e4f5f7;
	font-size: 18px;
	min-width:15px;
	height:40px;
	white-space: nowrap;
}
.chuigaki table td{
	width:400vw;
	border: 1px solid #ffffff;
	border-bottom: 1px solid #e4f5f7;
	font-size: 18px;
}
.chuigaki caption {
  padding: 0.5em; /* 文字周りの余白 */
  color: #FFF; /* 文字色 */
  font-weight: bold; /* 太字に */
  background: #305aa7; /* 背景色 */
}
.event-contents table{
	border: solid 2px #ffffff;
	background:#ffffff;
}
.event-contents table th {
	font-size: 20px;
	padding:10px;
	border-right: hidden;
	border-bottom: 1.2px dotted #000000;
	width:130vw;
}
.event-contents table td {
	font-size: 20px;
	border-bottom: 1.2px dotted #000000;
	width:400vw;
}
.event-contents table.tomei {
	width: 0;
	height: 0;
	min-width: 0;
	min-height: 0;
	margin: 0;
	padding: 0;
	border: none;
	border-bottom: none;
	background: none;
}
.event-contents table td.tomei {
	font-weight: normal;
	font-family: none;
	font-size: 1.1vw;
	margin: 0;
	padding: 0;
	border: none;
	border-bottom: none;
	width:0;
	min-width:0;
 	height: 0;
	min-height: 0;
}
.migisoroe{ text-align:right;}
.hidarisoroe{ text-align:left; }
.nakasoroe{ text-align: center;}
.clearText {
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
}
/*グリッド設定*/
.gridnarabe {
  display: grid;
  /* grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); */
  /*   grid-auto-rows: 300px; */
  grid-gap: 10px 0;
  grid-template-columns: 65px 1fr;
  font-size:18px;
}
.gridnarabe .mozi1{ font-size:15px;}
.gridnarabe .mozi2{ font-size:13.5px;}
.gridnarabe .mozi3{ font-size:11.5px;}
@media only screen and (max-width:900px){.gridnarabe .mozi1{ font-size:15px;}}
@media only screen and (max-width:900px){.gridnarabe .mozi2{ font-size:13px;}}
.item1{ 
  font-size:18px;
  align-items: center start;
 }
.item3{
  width: 290px;
  height: 200px;
}

.gridnarabe2 {
  display: grid;
  grid-gap: 2px 0;
  grid-template-columns: 1fr 1fr 1fr;
  position: relative;
}
.gridnarabe2 img{ padding: 5px; }
@media only screen and (max-width:900px){
   .gridnarabe2 { grid-template-columns: 1fr;}
   .gridnarabe2 img{
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: 0% 0%
   }
}
/*グリッド設定終わり*/
.btn-social-long-insta {
  /*ボタンの下地*/
	color: #FFF;/*文字・アイコン色*/
	border-radius: 7px;/*角丸に*/
	position: relative;
	display: inline-block;
	height: 80px;/*高さ*/
	width: 250px;/*幅*/
	text-align: center;/*中身を中央寄せ*/
	font-size: 25px;/*文字のサイズ*/
	line-height: 40px;/*高さと合わせる*/
	background: linear-gradient(135deg, #9977ff 0%, #f60f79 50%) no-repeat;/*グラデーション①*/
	overflow: hidden;/*はみ出た部分を隠す*/
	text-decoration:none;/*下線は消す*/
	box-shadow:0px 3px 10px 2px rgba(0,0,0,0.3);
}
.btn-social-long-insta:before {
  /*グラデーション②*/
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;/*全体を覆う*/
	height: 100%;/*全体を覆う*/
	background: linear-gradient(15deg, #ffff2c, rgb(200, 118, 76) 25%, rgba(255, 60, 164, 0) 50%) no-repeat;
}
.btn-social-long-insta span {
  /*テキスト*/
	display:inline-block;
	position: relative;
	transition: .5s;
}
.btn-social-long-insta:hover span {
  -webkit-transform: rotateX(360deg);
  transform: rotateX(360deg);           /*ホバーで一周回転*/
}
.btn-sticky {
	display: inline-block;
	padding: 0.5em 1em;
	text-decoration: none;
	background: #f7f7f7;
	border-left: solid 6px #ff7c5c;/*左線*/
	color: #ff7c5c;/*文字色*/
	font-weight: bold;
	font-size:15px;
	float: right; 
	box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
}
.btn-sticky:active {
	box-shadow: inset 0 0 2px rgba(128, 128, 128, 0.1);
	transform: translateY(2px);
}
#btn-sticky2{
	padding: 0.5em 10px;
	color: red;/*文字色*/
	font-weight: bold;
	font-size:13px;
}
/*リンクデザイン1*/
.cp_link {
	display: inline-block;
	perspective: 1000px;
	perspective-origin: 50% 50%;
	vertical-align: bottom;
	overflow: hidden;
}
.cp_link span {
	display: inline-block;
	position: relative;
	padding: 0.1em 0.3em;
	transition: .4s;
	transform-origin: 50% 0%;
	transform-style: preserve-3d;
}
.cp_link span:after {
	display: inline-block;
	position: absolute;
	padding: 0.1em 0.3em;
	left: 0;
	top: 0;
	content: attr(data-text);
	color: #fff;
	background-color: #00ACC1;
	transform-origin: 50% 0%;
	transform: translate3d(0, 105%, 0) rotateX(-90deg);
}
.cp_link:hover span {
	background-color: #00ACC1;
	transform: translate3d(0, 0, -30px) rotateX(90deg);
}
/*リンクデザイン2*/
.sayukarasen {
	position: relative;
	padding: 0.1em 0.3em;
	display: inline-block;
	transition: .3s;
	color: #00ACC1;
}
.sayukarasen::before,
.sayukarasen::after {
	position: absolute;
	content: '';
	width: 0;
	height: 2px;
	background-color: #ff4500;
	transition: .3s;
}
.sayukarasen::before {
	top: 0;
	left: 0;
}
.sayukarasen::after {
	bottom: 0;
	right: 0;
}
.sayukarasen:hover::before,
.sayukarasen:hover::after { width: 100%; }
/*リンクデザイン3(画像リンク)*/
.zoomIn img{
  transform: scale(1);
  transition: .3s ease-in-out;/*移り変わる速さを変更したい場合はこの数値を変更*/
}
.zoomIn a:hover img{/*hoverした時の変化*/
  transform: scale(1.1);/*拡大の値を変更したい場合はこの数値を変更*/
}
/*リンクデザイン終わり*/
ol { color: black; /* 色を変更 */ }
/*押し込みボタンデザイン*/
.oskm_btn {
  display: inline-block;
  cursor: pointer;
  width: 100%;
  line-height: 40px;
  text-align: center;
  text-decoration: none;
  color: #fff;
  font-size:1.5rem;
  background-color: #1B85FB;
  border-left: solid 20px red;/*左線*/
  overflow: hidden;
  position: relative;
  box-shadow: 0px 5px 0px #1567C3;
  transition: .3s;
}
.oskm_btn:before{
  position: absolute;
  content: '';
  display: inline-block;
  top: 70px;
  left: 0;
  width: 600px;
  height: 100%;
  background-color: #fff; 
}
.oskm_btn:hover {
  box-shadow: unset;
  transform: translateY(4px);
}
/*押し込みボタンデザイン*/
/*くるくるボタン*/
.wrap {
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}
.button {
	width: 400px;
	height: 100px;
	font-family: 'Bitter', serif;
	font-size: 18px;
	text-transform: uppercase;
	letter-spacing: 2.5px;
	font-weight: 500;
	color: #000;
	background: radial-gradient( at 50% 50%, #ff7f7f, rgba(255, 127, 127, 0.45), rgba(255, 127, 127, 0.18));
	border: none;
	border-radius: 45px;
	box-shadow: 0px 8px 15px rgba(0, 0, 0, 0.1);
	transition: all 0.3s ease 0s;
	cursor: pointer;
	outline: none;
	text-decoration: none;
}
.button:hover {
	background: #2EE59D;
	box-shadow: 0px 15px 20px rgba(46, 229, 157, 0.4);
	color: #fff;
	transform: translateY(-7px);
}
/*くるくるぼたん終*/
/*ふわっとボタン*/
a .fuwabtn {
  display: inline-block;
  padding: 1rem 3rem;
  text-decoration: none;
  text-align: center;
  color: #41a4fd;
  font-size: 20px;
  font-weight: bold;
  border: 3px #41a4fd solid;
  transition: 0.5s;
}
a .fuwabtn:hover {
  color: #0ee6ff;
  border: 3px #0ee6ff solid;
  transform: translateX(3px);
}
/*ふわっとボタン終*/
/*パンくずリスト*/
.breadcrumb {
  margin: 10px 0 -20px 30px;
  padding: 0;
  list-style: none;
}

.breadcrumb li {
  display: inline;/*横に並ぶように*/
  list-style: none;
  font-weight: bold;/*太字*/
  font-size: 12px
}
.breadcrumb li:after {/* >を表示*/
  content: '>';
  padding: 0 0.2em;
  color: #555;
}
.breadcrumb li:last-child:after { content: ''; }
.breadcrumb li a {
  text-decoration: none;
  color: #52b5ee;/*色*/
}
.breadcrumb li a:hover { text-decoration: underline; }
/*パンくずリスト終*/
/*キーフレームアニメーション*/
#migikaiten{ animation:3s linear infinite rotation1;}
#tatekaiten{ animation:3s linear infinite rotation2;}
#yokokaiten{ animation:4s linear infinite rotation3;}
@keyframes rotation1{
  0%{ transform:rotate(0);}
  100%{ transform:rotate(360deg); }
}
@keyframes rotation2{
  0%{ transform:rotateX(0);}
  100%{ transform:rotateX(360deg); }
}
@keyframes rotation3{
  0%{ transform:rotateY(0);}
  100%{ transform:rotateY(360deg); }
}
/*きらりと光るボタンアニメ*/
.kirari_btn_box{ position: absolute; }
.kirari_btn{
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  line-height: 70px;
  letter-spacing: 3px;
  width: 200px;
  height: 70px;
  background: #000;
  margin: auto;
  cursor: pointer;
  border-radius: 100px;
  overflow: hidden;
  position: relative;
}
.kirari_btn:before{
  position: absolute;
  content: '';
  display: inline-block;
  top: 70px;
  left: 0;
  width: 600px;
  height: 100%;
  background-color: #fff; 
}
/*アニメーション*/
.kirari_ani:before{ animation: kiran 5s ease-in-out infinite; }
@-webkit-keyframes kiran {
 0%{transform:scale(0) rotate(45deg); opacity: 0; }
 80%{transform:scale(0) rotate(45deg); opacity: 0.8; }
/*81%{transform:scale(2) rotate(45deg); opacity: 1; } */
 100%{transform:scale(8) rotate(45deg); opacity: 0; }
}
/*きらりと光るボタンアニメ終*/
/*キーフレームアニメーション終*/
/*文字サイズ*/
.fSize{ font-size: 40vw; }
@media only screen and (max-width:900px){}
/*文字サイズ終わり*/
