@charset "utf-8";
/* CSS Document */

/* @font-face {
     font-family: 'Noto Sans JP';
     font-style: normal;
     font-weight: 400;
     src: local("Noto Sans CJK JP"),
         local("Noto Sans JP"),
          url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff2) format('woff2'),
          url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff) format('woff'),
          url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.otf) format('opentype');
  }*/
/* header-log main_logo*/
html{
	font-size: 62.5%;/*16px*62.5%=10px*/
	font-family: "sans-serif","Noto Serif JP","游明朝","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";

}

body{
	color:#000;/*文字色を黒にする*/
	font-size: 1.6rem;
	line-height: 1.85;	
}

.red{
	color: #D3032B;
}
center{
	width: 100%;
    text-align: center;
	margin: auto;
}

.header{
	position: relative;
}

.header-ttl {
    color: #D3032B;
    height: 31px;
    z-index: 10;
   /* background-color: rgba( 255, 255, 255, 0.45 );*/
    position: fixed;
    max-width: 150px;
    padding-bottom: 10px;
    width: 100%;
    text-align: center;
	 top: 77px;
    /* right: 15px; */
    left: 8px;
 
}
/*nav*/
.nav-a {
    padding-left: 20px;
}

.nav-sns{
	    list-style: none;
    display: flex;
	margin-top: 50px;
	padding-left: 115px;
}


.nav-sns li{
	padding-right: 40px;
	    
}


#nav-circle-bg {
  position: fixed;
  background: #D3032B;
  width: 600px;
  height: 500px;
  top: 50%;
  right: -600px;
  margin-top: -300px;
  border-radius: 50%;
  transition: transform 0.5s ease;
  transition-delay: 0.45s;
}

.open #nav-circle-bg {
  transform: matrix(2.7, 0, 0, 2.7, 0, 0);
  transition-delay: 0s;

}

#nav-circle-bg{
  z-index: 20;
}
#nav {
  position: fixed;
  font-size: 32px;
  height: 100%;
  width: 500px;
  right: -500px;
  display: flex;
  align-items: center;
	z-index: 500;
}


#nav > ul {
  width: 100%;
  list-style: none;
}
#nav li {
  transition: transform 0.5s ease;
}
#nav li:nth-child(1) {
  transition-delay: 0;
}
#nav li:nth-child(2) {
  transition-delay: 0.1s;
}
#nav li:nth-child(3) {
  transition-delay: 0.2s;
}
#nav li:nth-child(4) {
  transition-delay: 0.3s;
}
#nav a {
  width: 100%;
  display: block;
  color: #ffffff;
  text-align: left;
  padding: 10px 0;
}
#nav a:after {
  content: "";
  display: block;
  background: #A8894E;
  width: 0;
  height: 1px;
  transition: width 1s ease;
}
#nav a:hover {
  color: #A8894E;
}
#nav a:hover:after {
  width: 100%;
}

.open #nav li {
  transform: translateX(-400px);
}
.open #nav li:nth-child(1) {
  transition-delay: 0.3s;
}
.open #nav li:nth-child(2) {
  transition-delay: 0.4s;
}
.open #nav li:nth-child(3) {
  transition-delay: 0.5s;
}
.open #nav li:nth-child(4) {
  transition-delay: 0.6s;
}

/* ========================
* nav-toggle
* ======================== */
#nav-toggle {
  position: fixed;
  top: 15px;
  right: 15px;
  width: 56px;
  height: 56px;
  padding: 19px 17px 0;
  background: #ffffff;
  border-radius: 50%;
  cursor: pointer;
  z-index: 100;
}
#nav-toggle:hover{
 background: #A8894E;
 transition: .4s;
}
#nav-toggle > div {
  position: relative;
}
#nav-toggle span {
  width: 100%;
  height: 2px;
  left: 0;
  display: block;
  background: #D3032B;
  position: absolute;
  transition: 0.35s ease-in-out;
}
#nav-toggle span:nth-child(1) {
  top: 0;
}
#nav-toggle span:nth-child(2) {
  top: 7px;
}
#nav-toggle span:nth-child(3) {
  top: 14px;
}

.open #nav-toggle span:nth-child(1) {
  top: 7px;
  transform: rotate(45deg);
}
.open #nav-toggle span:nth-child(2) {
  width: 0;
  left: 50%;
}
.open #nav-toggle span:nth-child(3) {
  top: 7px;
  transform: rotate(-45deg);
}

#contents {
  text-align: center;
  padding: 60px;
}	
/*/////nav-----*/



/*---トップページへ戻る-----------------*/
#page_top{
  width: 90px;
  height: 90px;
  position: fixed;
  right: 0;
  bottom: 10px;
  opacity: 0.6;
}
#page_top a{
  position: relative;
  display: block;
  width: 90px;
  height: 90px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f102';
  font-size: 25px;
  color: #D3032B;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -40px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
#page_top a::after{
  content: 'PAGE TOP';
  font-size: 13px;
/*  color: #fff;*/
  position: absolute;
  top: 45px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
  color:#D3032B;
}

/*///////////////-----------トップへ戻る*/

/*--------------------------header/gazou */

.top-pc{
	
	background-image: url("../images/main/main.jpg");
	 background-repeat:  no-repeat;                         /* 画像の繰り返しを指定  */              
	background-position:center center;                     /* 画像の表示位置を指定  */
	 background-size: cover;                              /* 画像のサイズを指定  bgiでの指示  */
	  width:100%;                                            /* 横幅のサイズを指定    */
	 height:600px;                                          /* 縦幅のサイズを指定    */
}
/*--------------------------header/gazou */


/*--top-ttl-----------*/
.top-ttl{
    margin-left: 20%;
    text-align: center;
    min-width: 250px;
    /* max-width: 350px; */
    bottom: 100px;
    /* top: -150px; */
    letter-spacing: 10px;
    height: 50px;
    background-color: rgba(255,255,255,0.5);
    position: absolute;
    width: 70%;
    right: 0;
}
.top-ttl h2{
	 font-weight: bold;
    font-size: 30px;
}


/*--///top-ttl--------------*/



/*--------------------log*/
.main_logo {
    z-index: 11;
    position: absolute;
    top: 25px;
    left: 10px;
}



.log {
        position: fixed;
    max-width: 300px;
    padding-bottom: 10px;
    width: 100%;
}
.log-second{
	    max-width: 200px;
    padding-bottom: 20px;
    width: 100%;
}
/*--------------------///////log*/


/*-------------ＳＮＳ-*/
/*ul li{
padding: 0 5px;
}*/


.tel-icon-pc{
	   /*right: -315px;*/
    /*width: 100%;*/
    position: fixed;
    /* text-align: center; */
    /* bottom: 10px; */
    top: 0;
    margin: auto;
    z-index: 2;
    right: 30px;
    width: 56px;

}
.header-list li {
    list-style: none;
    margin: 30px;
    display: flex;
    width: 150px;
	top:-10px;
	right: -30px;
}

li.tel-icon {
/*    display: none;*/
}

	.ca-to{
	width: 40%;
	
}


.fa-phone{
font-size: 25px;	
}

.center{
	text-align: center;
}

.fa-instagram {
  color:#fff;
  background:radial-gradient(at 20% 120%,orange, #f15a4d 25%, #f13f79 55%, #9933ff 100%) no-repeat;
  border-radius:20%;
	padding: 0px 1.5px;
}

.fa-twitter  {
  color:#55acee;

}


.twitter-icon{
	 position: fixed;
/*	 position: absolute;*/
	z-index: 19;
    top: 20px;
    right: 76px;
}
.instagram-icon{
	  position: fixed;
/*	 position: absolute;*/
	z-index: 19;
    top: 21px;
    right: 132px;
	/*font-size: 18px;*/
	/*width: 30px;*/
}

.tel-icon{
    position: fixed;
    /* position: absolute; */
    z-index: 19;
    top: 20px;
  
    padding-right: 10px;
}
.tel-icon{
	display: none;
}

.tel-icon a {
 color: #00000;
}

.my-big{
font-size: 28px;
}

.tel-icon img:hover {
  background-color: #A8894E;
  border-color: #AA953D;
  color: #FFF;
  border-radius: 30%;
 
}

/*.tel-icon-pc {*/
   /* background: #fff;*/
/*	line-height: 0;
	 background:radial-gradient(at 20% 120%,orange, #fff 25%, #fff 55%, #fff 100%) no-repeat;*/
    /* スマホ背景 */
    
/*}*/


/*------/////ＳＮＳ*/

.wrapper{
	max-width:1200px;
	margin: auto;
	padding: 0 10px;
}
/*-------下線*/
.main-title{
  letter-spacing: 10px;	
  font-weight:  bold;
  margin        : auto;                 /* サンプル用 中央寄せ  */
  box-sizing    : border-box;           /* 罫線も含む長さ       */
  width         : 100%;                 /* BOXの幅              */
  max-width     : 100%;                /* BOXの最大幅          */
  height        : 150px;              /* BOXの高さ            */
 /* padding-top       :30px ;*/                 /* 文字の位置合わせ     */
  font-size     : 40px;                 /* 文字サイズ           */
  text-align    : center;               /* 文字位置             */
  color         : #000000;              /* 文字色               */

  background    : #fff;              /* BOXの背景色          */
  border-bottom : 12px dotted #d3032b;   /* 枠線の指定（下）     */
  border-radius : 1px;                  /* 角丸の指定           */
    padding-top: 30px;
}
/*－－－－－－－////下線*/

.histry-box{
	width: 50%;
    margin: 0 auto;
    padding: 0 50px;
}

/*----メイン　サブｔｌｔ--------------*/

.main-sab p{
font-size     : 40px;
font-weight:bold;   
}

.main-txt p {
    line-height: 80px;
    text-align: left;
    padding: 0 50px;
    font-size: 20px;
}
.main-sab{
	height: 100px;
    text-align: center;
}
.main-txt{
text-align: center;
    width: 50%;
    margin: auto;
}

.main-txt p {
 /*font-size: 30px;*/
	font-size: 3.2vw;
 text-align:center;
}

.main-txt{
	padding-top: 60px;
	line-height: 50px
}





.main-txt-txt{
	    letter-spacing: 2px;
	    padding: 50px 0;
     max-width: 650px;
   text-align: center;
    margin: auto;
}


.main-sab-wrapper{
		padding: 0 20px 0 20px;
	}	
.top{
	 font-size :30px;
	 font-weight: bold;
}
.blown{
color: #A8894E;	
}

.main-twotltle{
	 padding:50px 0 20px 0;
}


.twenty-five{
	padding-top: 85px 25px 25px 25px;
	line-height: 50px;
	
	
	}
/*.twenty-five p {
 font-size: 30px;
	font-size: 3.2vw;
 text-align:center;
}*/
.main-txt p {
    line-height: 80px;
    text-align: left;
    padding: 0 50px;
    font-size: 20px;
}

/*----/////サブｔｌｔ--------------*/
.flex{
	display: flex;
	/*justify-content: center;*/
	padding: 80px 0 130px 0;
}
.font-txt{
padding-bottom: 50px;
font-size: 40px;
font-weight: bold;	
}

.concept-txt{
	padding-right: 20px;
		
}



/*--------botton---------------------*/
.btn-circle-flat {
  display: inline-block;
  text-decoration: none;
  background: #A8894E;
  color: #FFF;
  width: 80px;
  height: 80px;
  line-height: 40px;
  border-radius: 50%;
  text-align: center;
  overflow: hidden;
  transition: .4s;
}

.btn-circle-flat:hover {
  background: #d4a346;
}

.btn-border {
	
   display: flex;
/*    flex-wrap: wrap*/;
  /*display: inline-block;*/
  /*max-width: 180px;*/
  text-align: left;
  border: 2px solid #A8894E;
  font-size: 16px;
  color: #A8894E;
  text-decoration: none;
  font-weight: bold;
  padding: 8px 16px;
  border-radius: 4px;
  transition: .4s;
	justify-content: space-between;
}

.btn-border:hover {
  background-color: #A8894E;
  border-color: #AA953D;
  color: #FFF;
}

.btn-border p{
	margin: auto;
}
.btn-border figure{
	margin: auto;

}
.btn-top-txt{
	font-size: 20px;
}
.btn-box{
	padding-top: 43px;
}

.btn-border {
    max-width: 420px;
}
.yajirusi-width {
    width: 60%;
}
a {
 width: 400px;
}

.btn-botom{
	font-size: 30px;
     margin: auto;
}
.kids-button {
	/*font-size: 23px;*/
	width: 25%;
}

/*.btn-border p{
	font-size: 25px;
}*/

.buttonbug{
	background-image: url("../images/logo/pinkugold.png");
	height: 500px;
	background-size: cover;
	/*opacity: 0.5;*/
}
.container {
    text-align: -webkit-center;
    padding: 50px;
}
/*--------/////////////////////botton---------------------*/

/*miryoku/-----------------------------------*/

.miryoku{
	background-color: #FCFBF4;
	padding:80px 0 0 0 ; 
}


/*--//////////////////miryoku/-----------------------------------*/
/*
.ak-600{
		width: 50%;
	    height:250px;
	}
	.ak-600-img{
		overflow:hidden;
	}
*/



.miryoku-tlt{
	font-size: 40px;
	padding: .3em;
	border-bottom: 7px dotted #D3032B;
	margin-bottom: 80px;
	width: 60%;
	
}
.miryoku-box{
	padding-left:70px; 
	margin-bottom: 120px;
}
.miryoku-hi{
	    border-left: 7px dotted #D3032B;
}

.karegori-txt{
	display: flex;
    justify-content: center;
	line-height: 40px;
	min-width: 750px;
	/*padding-bottom:50px;*/
	/*margin-bottom: 180px;*/
}
.kategori {
	width: 55%;
	padding-right: 20px;
}

.kategori-speace{
	padding-top: 20px;
}
.img-px{
	height: 70px;
	padding-right: 15px;
}

.img-big{
	width: 14vw;
	
}
.img-img{
	 width: 350px;
    height: 25vw;
	min-height: 200px;
    margin-top: 50px;
}

.img-img-bg{
	/* width: 350px;
    height: 26vw;*/
	width: 350px;
    height: 200px;
	margin:auto;
	
}
.maru-line{
	padding: .3em;
	border-bottom: 2px dotted #D3032B;
	margin-bottom: 20px;
	    display: flex;
	    align-items: center;
}
.maru-line p{
	    font-size: 28px;
	 
}
.maru-line-p{
	flex: 1;
}
/*footer------------------------------------------------------------------------------*/
.address-pb p{
	text-align: left;
}

.blown{
 color: #A17D3A;	
}

.footer{
	background-color: #FCFBF4;
	padding: 50px 0 0 0;
		
}

.address{
    text-align: left;
	font-style: normal;
	padding-left: 30px;
}
.address-pb{
	padding: 20px 0 0 0;
}
.modalArea p{
	text-align: left;
}
.copyright{
    font-size: 11px;
	background-color: #D3032B;
	color: #fff;	
}
.copyright small{
	text-align: center;
	}
.Company{
		   width: 100%;
    text-align: center;
	background-color: #FCFBF4;
	}
.address-pb p{
	text-align: center;
}
.modalWrapper{
	-ms-text-align-last: auto;
	text-align:left;
}
.modalContents P{
	text-align: left;
}

.Company{
	padding-top: 80px;
}
.company-p{/*テキストを左揃えにしながら中央に文字を持ってくる*/
	    text-align: left;
    margin: auto;
    width: 50%;
}

/*puraibasi- */
* {
  box-sizing: border-box;
}
/* モーダルCSS */
.modalArea {
  display: none;
  position: fixed;
  z-index: 10; /*サイトによってここの数値は調整 */
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.modalBg {
  width: 100%;
  height: 100%;
  background-color: rgba(30,30,30,0.9);
}

.modalWrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  transform:translate(-50%,-50%);
  width: 70%;
  max-width: 500px;
  padding: 10px 30px;
  background-color: #fff;
   height : 50%; /*//お好みの高さで固定*/
  overflow : auto; /*//状況に応じて縦スクロールバーが出現*/
}

.closeModal {
  position: absolute;
  top: 0.5rem;
  right: 1rem;
  cursor: pointer;
}


/* 以下ボタンスタイル */
#openModal {
    /* position: absolute; */
    /* top: 50%; */
    /* left: 50%; */
    /* transform: translate(-50%,-50%); */
    text-align: left;
    width: 100%;
    padding-left: 30px;
}

button {
    /* padding: 10px; */
    /* background-color: #fff; */
    /* border: 1px solid #282828; */
    /* border-radius: 2px; */
    cursor: pointer;
	color: #A8894E;
	
}



/*------------------------///////////////footer------*/


@media screen and (max-width:768px){
	/*７６８以下は下記の指示*/
body{
      font-size: 1.3rem;
	width: 100%;
    text-align: center;
    margin: auto;
    }
	
	.header-ttl{
   top: 66px;
    /* right: 15px; */
    left: 8px;
}
#nav-circle-bg{
	width: 500px;	
	}	

#page_top{
	bottom: 25px;
	}	

	.wrapper{
	/*	max-width: 500px;*/
		padding: 10px 10px 0 10px;
	}
	.top-pc{
		height: 130vw;
	}


li.tel-icon {
    display:block;
}

	li.tel-icon-pc{
		display: none;
	}
	
	.header-list li{
		right: 5px;
	}

.tel-icon {
    /*right: -315px;*/
    /*width: 100%;*/
    position: fixed;
    /* text-align: center; */
    /* bottom: 10px; */
    top: 0;
    margin: auto;
    z-index: 2;
    right: 30px;
    width: 56px;
}	
	ul li{
padding: 0 20px;
}
	
	.nav-sns {
	display: block;
}
	.nav-a{
		    padding-left: 150px
	}
	.nav-sns{
		padding-left: 200px;
	}
	
/*--------------------*/
	.top-ttl{
		    width: 100%;
	}
	.main-title{
		font-size: 25px;
		padding-top: 0;
		height: 66px;
	}
	.main-txt{
		width: 100%;
	}
    .main-twotltle {
    padding: 25px 0 20px 0;
}
	.main-txt p {
    line-height: 40px;
	text-align: center;
	font-size: 18px;
	}
	.flex{
		width: 250px;
		padding-top: 40px;
        padding-bottom: 65px;
	}
	.main-sab{
		height:auto;
		
	}
	.maru-line-p {
  
    flex: 1 150%
	}
	
	.log {
    max-width: 200px;
}
/*/////////////--------------------*/

/*karegori--------------------*/
.karegori-txt {
 padding: 25px 0;
 min-width: auto;   
  
}
	.karegori-txt-txt{
		text-align: left;
		padding-bottom: 10px;
	}
	.log-second{
		    padding-bottom: 10px;
	}
	.miryoku{
		padding:40px 0 40px 0;
	}
.miryoku-tlt {
    font-size: 30px;
    padding: .3em;
    border-bottom: 7px dotted #D3032B;
	margin-bottom: 40px;
/*	 width: 60%;*/
	}
	.miryoku-box{
		margin-bottom: 60px;
	}	
	
	
	.maru-line p {
    text-align: left;
		font-size: 19px;
	}
	.maru-line br {
		display: none;
	}
	.main-txt p{
		padding: 0 20px;
	}
/*//////////////karegori--------------------*/

/*------botton-----------*/
.buttonbug{
		height: auto;
	}
.container {
        padding: 25px;
	}
/*------//////botton-----------*/





}

@media screen and (max-width:600px){
	
	body{
      font-size: 1.3rem;
	width: 100%;
    text-align: center;
    margin: auto;
    }
	
	.tel-icon{
		display:block;
	}
	.tel-icon-pc{
		display:none;
	}
	
	.karegori-txt {
    line-height: 30px;
    display: block;
    text-align: left;
}
	
	.miryoku-box {
		padding: 0;
	}
	
/*	.white{
		background-color: #fff;
	}
	*/
	.histry-box{
		margin: auto;
		width: 100%;
	}
	
/*
	_::-webkit-full-page-media, _:future, :root .histry-box{
    width: 50%;
}
*/
	
	.macenter{
margin: auto;
	}
	
	.miryoku-tlt{
		width: 100%;
    text-align: left;
    padding-left: 20px;
	}
	.karegori-txt{
		width: 100%;
	}
	.kategori {
   width: 100%;
		padding: 0;
	}
	.img-img{
		margin: auto;
	}
	.img-sp{
		width: 91%;
	}
	
	/*btn*/
	.btn-border{
		width:100%;
	}
	.kids-button {
		display: none;
	}
		.buttonbug{
		height: 370px;
	}
	.btn-box{
		padding-top: 45px;
	}
	/*////btn*/
	.footer{
		text-align: left;
	}
	
	
	
}
	