@charset "utf-8";
/*
Theme Name: kronos
*/

.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

* {
-webkit-appearance: none;
}

html {
font-size: 16px;
line-height: 30px;
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
scroll-behavior: smooth;
}

body {
  margin: 0 auto;
  padding: 0;
  list-style-type:none;
  font-size:16px;
  font-family: "Noto Sans JP", serif;
  font-optical-sizing: auto;
  font-style: normal;
  line-height: 2.2em;
}
*, *::before, *::after {
  box-sizing: border-box;
}
p{
	margin-top:0;
}
a:link, a:visited, a:hover, a:active {
  color: #000000;
  text-decoration: none;
}
ul{
	list-style: none;
	margin: 0;
	padding:0;
}
ul li{
	list-style: none;
	margin: 0;
	padding:0;
}
img{
	vertical-align: top;
	width:100%;
	height:auto;
}
.pc { display: block !important; }
.sp { display: none !important; }
 
@media only screen and (max-width: 768px) {
    .pc { display: none !important; }
    .sp { display: block !important; }
}
.spacerTop{
	padding-top:80px;
}
.spacerBottom{
	padding-bottom:80px;
}
@media only screen and (max-width: 768px) {
.spacerTop{
	padding-top:40px;
}
.spacerBottom{
	padding-bottom:40px;
}
}

header{
	height:106px;
}
.logo{
	width: 120px;
	position: absolute;
	top:25px;
}
.logo img{
	width:100%;
	height:auto;
}
.head_inner{
	max-width:1100px;
	margin:auto;
	overflow: hidden;
	position: relative;
	height: 106px;
}
@media only screen and (max-width: 1100px) {
.head_inner{
	margin:auto 20px;
}
}
.inner{
	max-width:1100px;
	margin:auto;
	overflow: hidden;
}

@media only screen and (max-width: 1100px) {
.inner{
	margin:auto 20px;
}
}

.kv{
	max-width:1100px;
	margin:0 auto 50px auto;
}
.kv h1{
	margin:0;
	padding:0;
}

ul.navi{
	overflow: hidden;
	margin:auto;
}
ul.navi li{
	display: inline-block;
    width: 32.33333333333%;
    background: url( "images/navbg.png") no-repeat;
    background-size: 100% 100%;
    font-size: 18px;
	font-weight: bold;
    letter-spacing: 0.01em;
    line-height: 1.44em;
    position: relative;
    margin-bottom: 20px;
    text-align: center;
    margin-right: 1%;
}
@media only screen and (max-width: 820px) {
ul.navi li{
	font-size: 14px;
}
}
@media only screen and (max-width: 767px) {
ul.navi li{
    width: 100%;
    margin-bottom: 10px;
}
}

ul.navi li:nth-of-type(3){
    margin-right: 0;
}
ul.navi li a{
	display:block;
	padding: 30px 0;
}
ul.navi li a:hover{
	color:#757381;
	-webkit-transition: all 0.5s;
    transition: all 0.5s;
}

.no{
	width:108px;
	margin: auto;
}
h2{
	font-size:35px;
	line-height: 35px;
	padding:30px 0;
	margin:0;
	text-align: center;
}
@media only screen and (max-width: 767px) {
h2{
	font-size:22px;
	line-height: normal;
}	
}
h3{
	font-size:20px;
	margin:0 0 23px 0;
	padding:0 0 23px 0;
	border-bottom:#110935 solid 2px;
}
@media only screen and (max-width: 767px) {
h3{
	font-size:18px;
	line-height: normal;
}
}

.dot{
	margin: auto;
	width:59px;
}
.textBig{
	overflow: hidden;
	margin:50px 0 0 0;
}
@media only screen and (max-width: 767px) {
.textBig{
	overflow: hidden;
	margin:40px 0 0 0;
}
}
.textBig .photo{
	width:35%;
	float: left;
}
.textBig .text{
	width:60%;
	float: right;
}
@media only screen and (max-width: 767px) {
.textBig .photo{
	width:100%;
	float: none;
	margin-bottom:15px;
}
.textBig .text{
	width:100%;
	float: none;
}		
}

.textsmall{
	overflow: hidden;
	margin:50px 0 0 0;
	display:-webkit-box;
    display:-moz-box;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
}
.textsmall02{
	overflow: hidden;
	margin:50px 0 0 0;
	display:-webkit-box;
    display:-moz-box;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
}
@media only screen and (max-width: 767px) {
.textsmall{
	margin:40px 0 0 0;
}
.textsmall02{
	margin:40px 0 0 0;
}
}
.textsmall .photo{
	margin:0 0 20px 0;
}
.textsmall02 .photo{
	margin:0 0 20px 0;
}
.textsmall .box01{
	width:48%;
	margin-right: 4%;
}
.textsmall .box02{
	width:48%;
}
.textsmall .box03{
	width:48%;
	margin-right: 4%;
	margin-top:50px;
}
.textsmall .box04{
	width:48%;
	margin-top:50px;
}
.textsmall02 .box01{
	width:48%;
	margin-right: 4%;
}
.textsmall02 .box02{
	width:48%;
}
.textsmall02 .box03{
	width:48%;
	margin-right: 4%;
	margin-top:50px;
}
.textsmall02 .box04{
	width:48%;
	margin-top:50px;
}
.textsmall02 .box05{
	width:48%;
	margin-right: 4%;
	margin-top:50px;
}
.textsmall02 .box06{
	width:48%;
	margin-top:50px;
}
@media only screen and (max-width: 767px) {
.textsmall .box01{
	width:100%;
	margin-right: 0%;
}
.textsmall .box02{
	width:100%;
	margin-top:25px;
}
.textsmall .box03{
	width:100%;
	margin-right: 0%;
	margin-top:25px;
}
.textsmall .box04{
	width:100%;
	margin-top:25px;
}
.textsmall02 .box01{
	width:100%;
	margin-right: 0%;
}
.textsmall02 .box02{
	width:100%;
	margin-top:25px;
}
.textsmall02 .box03{
	width:100%;
	margin-right: 0%;
	margin-top:25px;
}
.textsmall02 .box04{
	width:100%;
	margin-top:25px;
}
.textsmall02 .box05{
	width:100%;
	margin-right: 0%;
	margin-top:25px;
}
.textsmall02 .box06{
	width:100%;
	margin-top:25px;
}		
}

.gray{
	background: #f8f8f8;
}
.catch{
	font-size:25px;
	font-weight: bold;
	margin:50px 0 -10px 0;
	text-align:center;
}
.small3{
	overflow: hidden;
	margin:50px 0 0 0;
}

@media only screen and (max-width: 767px) {
.catch{
	font-size:20px;
	margin:40px 0 -10px 0;
}
.small3{
	margin:25px 0 0 0;
}
}

.small3 .photo{
	margin:0 0 20px 0;
}
.small3 .box01{
	width:30%;
	float: left;
	margin-right:5%;
}
.small3 .box02{
	width:30%;
	float: left;
	margin-right:5%;
}
.small3 .box03{
	width:30%;
	float: right;
}
@media only screen and (max-width: 767px) {
.small3 .box01{
	width:100%;
	float: none;
	margin-right:0%;
}
.small3 .box02{
	width:100%;
	float: none;
	margin-right:0%;
	margin-top: 40px;
}
.small3 .box03{
	width:100%;
	float: none;
	margin-top: 40px;
}
}


.btn{
	width:100%;
	text-align: center;
}
.btn a{
	background: #110935;
	color:#fff;
	padding:10px 0;
	display: block;
	margin-top:15px;
	font-weight: bold;
	-webkit-transition: all 0.5s;
    transition: all 0.5s;
	border:1px solid #110935;
}
.btn a:hover{
	background: #fff;
	color:#110935;
	border:1px solid #110935;
	padding:10px 0;
	display: block;
	margin-top:15px;
	font-weight: bold;
}

.catchM{
	font-size:25px;
	background: #efeef3;
	border-top:3px solid #110935;
	border-bottom:1px solid #ccc;
	font-weight: bold;
	text-align: center;
	padding:20px 0;
	margin-top:50px;
}
@media only screen and (max-width: 767px) {
.catchM{
	font-size:18px;
	margin-top:25px;
	padding:10px;
}
}
.titleBox{
	overflow: hidden;
	margin-top: 50px;
	margin-bottom: 0px;
}
@media only screen and (max-width: 767px) {
.titleBox{
	margin-top: 25px;
}
}
.titleBox .date{
	width:30%;
	float: left;
	background: #110935;
	color:#fff;
	font-weight: bold;
	text-align: center;
	font-size: 20px;
	padding:12px 0;
}
.titleBox h3.tit{
	font-size:20px;
	margin:0 0 23px 0;
	padding:0 0 23px 0;
	border-bottom:#110935 solid 2px;
	width:65%;
	float: right;
}
@media only screen and (max-width: 767px) {
.titleBox .date{
	width:100%;
	float: none;
	background: #110935;
	color:#fff;
	font-weight: bold;
	text-align: center;
	font-size: 18px;
	padding:12px 0;
}
.titleBox h3.tit{
	font-size:18px;
	margin:23px 0 23px 0;
	padding:0 0 23px 0;
	border-bottom:#110935 solid 2px;
	width:100%;
	float: none;
}
}

.susmall{
	overflow:hidden;
	margin-top:50px;
}
@media only screen and (max-width: 767px) {
.susmall{
	overflow:hidden;
	margin-top:25px;
}
}
.photoArea{
	overflow:hidden;
	margin-bottom:15px;
}
.photoArea .p01{
	width:33.33333333333333333%;
	float: left;
}
.photoArea .p02{
	width:33.33333333333333333%;
	float: left;
}
.photoArea .p03{
	width:33.33333333333333333%;
	float: left;
}
@media only screen and (max-width: 767px) {
.photoArea .p01{
	width:100%;
	float: none;
}
.photoArea .p02{
	width:100%;
	float: none;
}
.photoArea .p03{
	width:100%;
	float: none;
}
}

footer{
	background: #e0e0e0;
	height: 136px;
}
.foot_inner{
	max-width:1100px;
	margin:auto;
	overflow: hidden;
	position: relative;
	height: 136px;
}
@media only screen and (max-width: 1100px) {
footer{
	background: #e0e0e0;
	height: auto;
}
.foot_inner{
	margin:auto 20px;
	height: auto;
}
}
.footlogo{
	width: 160px;
	position: absolute;
	top:30px;
}
@media only screen and (max-width: 767px) {
.footlogo{
	width: 160px;
	position: static;
	margin:30px auto 0 auto;
}
}
.footnavi{
	position: absolute;
	top:55px;
	right:0;
}
@media only screen and (max-width: 767px) {
.footnavi{
	position: static;
	margin-top:25px;
	margin-bottom:25px;
	right:0;
}
}
.footnavi ul{
	overflow: hidden;
}
.footnavi ul li{
	float: left;
	margin-left:30px;
	font-size:12px;
}
.copy{
	background:#8d8a8a;
	text-align: center;
	color:#fff;
	padding:10px 0;
	font-size:12px;
}
@media only screen and (max-width: 767px) {
.copy{
	font-size:9px;
}
}

@media screen and (max-width: 3000px) {
    #rmp-menu-title-196 > .rmp-menu-title-link {
        color: #ffffff;
        width: 50%!important;
        margin: auto;
    }
}

/* ハンバーガーボタンのスタイル */
.hamburger {
  position: absolute;
    top: 40px;
  right: 0;
  width: 30px;
  cursor: pointer;
  z-index: 20;
}

.hamburger span {
  display: block;
  height: 3px;
  width: 100%;
  background-color: #333;
  margin: 5px 0;
  transition: 0.4s;
}

.hamburger.active span{
	background-color: #fff;
}

/* バツ印に変化するスタイル */
.hamburger.active span:nth-child(1) {
  transform: rotate(45deg) translate(5px, 5px);
}

.hamburger.active span:nth-child(2) {
  opacity: 0;
}

.hamburger.active span:nth-child(3) {
  transform: rotate(-45deg) translate(6px, -6px);
}

/* メニューのスタイル */
.menu {
  position: fixed;
  top: -100%; /* 初期状態でメニューを画面の外に */
  right: 0;
  width: 100%;
  height: 100%;
  background:rgb(20 19 19 / 70%);;
  padding: 20px;
  box-sizing: border-box;
  z-index: 5;
  transition: top 0.3s ease; /* スライドアニメーション */
}
.menu ul{
	max-width: 60%;
    padding: 10% 0;
    margin: auto;
}
.menu ul li{
    padding: 5px 0;
}
.menu ul a{
	color: #fff;
    font-size: min(5vw , 30px);
    /* padding: 0px 0; */
    text-align: center;
    font-weight: bold;
    line-height: normal;
}

@media screen and (max-width: 767px) {
.menu ul {
    max-width: 90%;
}
}
/* メニューが表示される時 */
.menu.open {
  top: 0; /* メニューが表示される位置 */
}


.style{
	border-top:1px solid #ccc;
	border-bottom:none;
	margin:80px 0;
}

@media screen and (max-width: 767px) {
.style{
	border-top:1px solid #ccc;
	border-bottom:none;
	margin:40px 0;
}
}