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

/*spから作成*/


html{
	font-size:62.5%; /*16px x 62.5% = 10px */
	overflow-x: hidden;
	height: 100%;
}

body{

	font-family: 'Nunito','Noto Sans JP', sans-serif;
	font-size:1.4rem;
	background-color: #EE9C1D;
	margin: 0;
	padding: 0;
	color: #333;
}
p{
	font-size: 1.4rem;
	line-height: 1.7;
	
}
a{
	font-size: 1.4rem;
	line-height: 1.7;
	text-decoration: none;
	color:#333333;
}

h2{
	font-size: 2.0rem;
}

.fa i{
	font-size:2rem;
}

.title{
	margin: 80px auto 30px;
	font-weight: 600;
}
.button{
	display: block;
	background-color: #BEDF40;
	width: 60vw;
	border-radius: 5px;
	color:#fff;
	padding: 13px 20px;
	margin: 100px auto 30px; 
	box-shadow: 2px 2px 4px gray;
}

.button_short{
	width: 40%;
}
/*navigation*/


/*-------------------header_start--------------------*/

header{
	background-color: #EE9C1E;
	margin: 0;
	padding: 0;
}
.logo1{
	width: 100%;
}


/*-------------------header_end---------------------*/
.header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0;
}

/*humburger*/
.drawer{
	position:fixed;
	top:0;
	right:0;
	z-index:300;
}
/* チェックボックスは非表示に */
.drawer-hidden {
  display: none;
}

/* ハンバーガーアイコンの設置スペース */
.drawer-open {
  display: flex;
  height: 50px;
  width: 50px;
  justify-content: center;
  align-items: center;
  position: relative;
  top:5px;
  right:5px;
	border-radius: 3px;
  z-index: 100;/* 重なり順を一番上に */
  cursor: pointer;
  background: linear-gradient(to right,#8BB90B,#CDEB4D);
}

/* ハンバーガーメニューのアイコン */
.drawer-open span,
.drawer-open span:before,
.drawer-open span:after {
  content: '';
  display: block;
  height: 3px;
  width: 25px;
  border-radius: 3px;
  background:#fff ;
  transition: 0.5s;
  position: absolute;
}

/* 三本線のうち一番上の棒の位置調整 */
.drawer-open span:before {
  bottom: 8px;
}

/* 三本線のうち一番下の棒の位置調整 */
.drawer-open span:after {
  top: 8px;
}

/* アイコンがクリックされたら真ん中の線を透明にする */
#drawer-check:checked ~ .drawer-open span {
  background: rgba(255, 255, 255, 0);
}

/* アイコンがクリックされたらアイコンが×印になように上下の線を回転 */
#drawer-check:checked ~ .drawer-open span::before {
  bottom: 0;
  transform: rotate(45deg);
}

#drawer-check:checked ~ .drawer-open span::after {
  top: 0;
  transform: rotate(-45deg);
}
  
/* メニューのデザイン*/
.drawer-content {
  width: 90%;
  height: 90%;
  position: fixed;
  top: 10px;
  left: 100%;/* メニューを画面の外に飛ばす */
  z-index: 99;
  background: rgba(237,160,68,0.95);
  border-radius: 50px 30px 50px 30px;
  transition: .5s;
}

/* アイコンがクリックされたらメニューを表示 */
#drawer-check:checked ~ .drawer-content {
  left:5%;/* メニューを画面に入れる */
}

/*navigation*/
.nav{
	margin: 40px auto 30px;
}
.nav a{
	display: block;
	width: 100%;
	padding: 30px 0;
	text-align: center;
	color:#fff;
	font-weight: bold;
	text-shadow: 1px 1px 3px rgba(51,51,51,0.4);
}
.sns{
	display: block;
	text-align: center;
	color:#fff;
	font-weight: bold;
	padding: 20px 0 0;
	text-shadow: 1px 1px 3px rgba(51,51,51,0.4);
}
.item_sns{
	display: flex;
	justify-content: center;
	width: 30%;
	margin: 20px auto 0;
}
.item_sns a{
	display: inline-block;
	padding: 10px 0;
	
}


.header_style h1{
	text-align: center;
	font-size:2.4rem;
	margin: 50px 10%;
	text-shadow: 1px 1px 3px rgba(250,250,250,0.5);

}
.object1{
	display: block;
	width:3px;
	height: 30px;
	margin: 0 auto 50px;
	border-top: 15px solid #FFE6A6;
  	border-right: 45px solid transparent;
  	border-left: 45px solid transparent;
	box-shadow: rgba(250,250,250,0.7) 1px 1px 60px 5px;

}
 


/*scroll*/
.scroll {
	margin-bottom: 20px;
  background-color:#EE9C1D;
}
.txt{
	margin-top: 100px;
	color:#fff;
	display: block;
	text-align: center;
	letter-spacing: 1rem;
	font-family: 'Architects Daughter', cursive;
	animation: float_2979 2s linear infinite;
	transform-origin: 50% 50%;
}
.top_img{
	width: 100%;
	position:relative;
	margin-bottom: 100px;
}
/*-------------------main_start---------------------*/
.box{
	background: -moz-linear-gradient(90deg,#FEF2C8,#fff 30%,#fff,#fff 70%,#FEF2C8);
	background: -webkit-linear-gradient(90deg,#FEF2C8,#fff 30%,#fff,#fff 70%,#FEF2C8);
	background: linear-gradient(90deg,#FEF2C8,#fff 30%,#fff,#fff 70%,#FEF2C8 );
	margin: 0 10px 30px;
	padding: 30px 0 ;
	border-radius: 8px;
	text-align: center;
}
@keyframes float_2979 {
  0% { transform: translateY(0) }
  33.33333% { transform: translateY(-10px) }
  66.66667% { transform: translateY(0) }
  100% { transform: translateY(0) }
}
.subtitle{
	margin-top: 10px;
	margin-bottom: 100px;
}
.flex{
	margin: 10px auto;
	display:block;
}
.person img{
	width: 30%;
	padding: 0;
	margin: 0;
}
.person p{
	font-size:1.4rem;
}
.com-txt{
	margin: 30px;
	padding: 20px;
	text-align: center;
	
}
.com-txt h3{
	font-size:1.4rem;
	line-height: 1.7;
	margin-top: 30px;
	margin-bottom: 20px;
	background-color: #FFD049;
	padding: 10px;
	border: 1px dashed #fff;
	border-radius: 5px;
	color:#333;
	box-shadow: 0 0 0 4px #FFD049;
}
.com-txt h3:first-of-type{
	margin-top: 5px;
}
.com-txt p{
	font-size:1.4rem;
	color:#333;
}
.com-txt p:last-of-type{
	margin-bottom: 10px;
}
/*吹き出し*/
.arrow_box {
	background: #fff;
	border: 2px solid #f5cf11;
	padding: 20px;
	border-radius: 30px;
	margin:  20px 10px 100px;
}
.arrow_box:last-of-type{
	margin-bottom: 50px;
}
.arrow_box p {
  margin: 0;
  padding: 0;
}


/*続きを読む*/
.grad-btn {
	background-color: rgba(88,88,88,0.29);
	padding: 10px 100px;
	border-radius: 20px;
  /*.grad-btnのCSSは表示/非表示の動作には関係ないので、ご自由にどうぞ*/
}
.grad-item {
  position: relative;
  overflow: hidden;
  height: 0px; /*隠した状態の高さ*/
}
.grad-item::before {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 40px; /*グラデーションで隠す高さ*/
  background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
  background: linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
  content: "";
}
.grad-trigger {
  display: none; /*チェックボックスは常に非表示*/
}
.grad-trigger:checked + .grad-btn {
  display: none; /*チェックされていたら、grad-btnを非表示にする*/
}
.grad-trigger:checked ~ .grad-item {
  height: auto; /*チェックされていたら、高さを戻す*/
}
.grad-trigger:checked ~ .grad-item::before {
  display: none; /*チェックされていたら、grad-itemのbeforeを非表示にする*/
}

/*-------------------form_end-----------------------*/

.topbutton {/* ▼配色・配置・文字の装飾など */
   border-radius: 24px;  /* ←角丸の半径 */
   text-align: center;  /* ←文字の位置 */
   font-size: 1.4rem;  
	text-transform: uppercase;
   font-weight: bold; 
   margin:  0px; /* ←外側の余白 */
   padding: 10px;       /* ←内側の余白 */
}
.topbutton a {
   /* ▼リンクの装飾 */
   color: #EE9225; 
   text-decoration: none; /* ←下線なし */
}
.topbutton a:hover {
   /* ▼マウスが載ったときの装飾 */
   color:#EDA044;              /* ←文字色 */
   text-decoration:none; /* ←下線あり */
}
.form .title{
	font-size:1.6rem;
	line-height: 1.7;
}


/*-------------------footer_start-------------------*/
footer{
	background: linear-gradient(0deg,#A5B170, #DAEB8C);
	margin: 0;
	padding: 30px 0 80px;
	text-align: center;
	position:relative
}
footer p{
	font-size:1.2rem;
	color:#fff;
}
.footer_p{
	color:#121AA3;
	text-decoration-line: underline;
}
footer a{
	color:#fff;
	font-size:1.6rem;
}
footer p:first-of-type{
	padding: 30px 0 10px;
}

.footer_sns{
	display: flex;
	justify-content:center;
	margin: 20px auto;
}
.footer_sns a{
	padding: 0 10px;
	font-size:3rem;
	font-weight:bold;
}
small{
	font-size:1rem;
	position:absolute;
	left:10px;
	bottom: 10px;
}
/*-------------------footer_end---------------------*/
.sp_txt,.sp_br,.sp_img{
	display:block;
}
.tab_txt,.tab_br{
	display: none;
}
.tab_sp_br{
	display: block;
}
.header_style{
	display: block;
}

.pc_on,.tab_on{
	display: none;
}
/* -------------------------------------------- */
/* ▼タブレット用デザインとして付け足すデザイン */
/* -------------------------------------------- */
@media (min-width: 768px) {/*768px*/

	
	body{
		font-size:1.6rem;
	}
	p{
		font-size: 1.6rem;
		line-height: 1.7;
	}
	a{
		font-size: 1.6rem;
		line-height: 1.7;
	}
	h2{
		font-size: 2.2rem;
	}
	.nav{
		margin: 100px auto;
	}
	.fa i{
		font-size:3rem;
		}
	
	.logo1{
		width: 15rem;
	}
	.drawer-open{
		right:20px;
		width: 60px;
		height: 60px;
	}
	.drawer-content{
		height: 750px;
	}
	.header{
		margin: 0 20px;
	}
	.back{
		padding: 20px 0;
		margin: 0 auto;
		min-height: 200px;
		background-position: center;
		background-size:60%;
	}
	.box{
		margin-right: 30px;
		margin-left: 30px;
		overflow-x: hidden;
	}
	

	.form .title{
		margin: 120px auto 30px;
	}

	footer p{
		font-size:1.6rem;
	}
	
	/*----------------------------*/
	.sp_txt,.sp_br{
		display:none;
	}
	.tab_br,.tab_txt,.sp_img{
		display: block;
	}
	.tab_sp_br{
	display: block;
}
	small{
		font-size:1.2rem;
	}
	.header_style{
		display: block;
	}
	.pc_on{
		display:none;
	}
	.tab_on{
		display: block;
	}
}
/* ------------------------------------ */
/* ▼PC用デザインとして付け足すデザイン */
/* ------------------------------------ */
@media (min-width: 1024px) {
　
	body{
		font-size:1.8rem;
		overflow-x: hidden;
	}
	p{
		font-size: 1.8rem;
		line-height: 1.7;
	}
	a{
		font-size: 1.8rem;
		line-height: 1.7;
	}
	
	h2{
		font-size: 2.4rem;
	}
	.nav{
		margin: 100px auto;
	}
	.fa i{
		font-size:5rem;
		}
	
	li{
		list-style: none;
	}
	.logo1{
		width: 100%;
		z-index: 300;
		padding-left: 30px;
	}
	
	/*-------------------------------*/
	.header{
		background-color: rgba(229,229,229,0.46);
		height: 65px;
		width: 100vw;
		position:fixed;
		top:0;
		left:-5px;
		z-index: 500;
		padding-top: 10px;
		margin-top: 0;
		margin-right: 50px;
		margin-left: 5px;
	}
	.header_style{
		margin-top: 100px;
	}
	.top
	.pc_on{
		display: block;
	}
	
	.sp_img{
		display: none;
	}
	.pc-nav{
		display: flex;
		justify-content: space-between;
		margin: 0;
		min-width: 700px;
	}
	.pc_nav_menu{
		font-weight: bold;
		font-size:1.6rem;
		font-color:#333;
		padding-left: 2rem;
		position:relative;
		top:4px;
	}
	.pc-nav li:first-of-type{
		padding-left: 0;
	}
	.pc-nav li:last-of-type{
		padding-right: 35px;
	}
	.contact a{
		border:solid 1px #333;
		border-radius: 50px;
		padding: 10px 15px;
		margin-right: 30px;
		margin-left: 2rem;
		background: linear-gradient(to right, #E9FFAD, #DEFF4B);
	}
	
	.pc_sns a{
		color:#E3941E;
		font-size:3rem;
		margin-bottom: 10px;
		margin-right: 15px;
		position:relative;
		top:-8px;
		padding: 0;
		text-shadow: -2px -2px 1px #fff,-1px -1px 1px #fff,1px 1px 1px #fff,2px 2px 1px #fff,1px -1px 1px #fff,-1px 1px 1px #fff;
	}
	.pc_sns_a{
		font-weight:bold;
	}
	
	.pc_sns_a:last-of-type{
		margin-right: 0px;
	}
	.pc_img{
		display: block;
		background-image: url("../img/og_img.jpg");
		background-repeat: no-repeat;
		background-size: cover;
		height: 860px;
	}
	
	.drawer-open{
		display: none;
	}
	
	.tab_sp_br{
		display:none;
	}
	.subtitle{
	margin-top: 20px;
	padding-bottom: 0px;
		margin-bottom: 10px;
	}
	.flex{
	margin: 20px 30px;
	display:flex;
	align-items: center;
}
.person{
	min-width:200px;
}
.person img{
	width: 80%;
	padding: 0;
	margin: 0;
}
.person p{
	font-size:1.4rem;
}
.com-txt{
	margin: 30px;
	padding: 20px;
	text-align: left;
	
}
.com-txt h3{
	font-size:1.8rem;
	margin-top: 30px;
	margin-bottom: 20px;
	background-color: #FFD049;
	padding: 10px;
	border: 1px dashed #fff;
	border-radius: 5px;
	color:#333;
	box-shadow: 0 0 0 4px #FFD049;
}
.com-txt h3:first-of-type{
	margin-top: 5px;
}
.com-txt p{
	line-height: 1.9;
	font-size:1.6rem;
	color:#333;
}
.com-txt p:last-of-type{
	margin-bottom: 10px;
}
/*吹き出し*/
.arrow_box {
	position: relative;
	background: #fff;
	border: 2px solid #f5cf11;
	padding: 20px;
	border-radius: 30px;
	margin:  20px 10px 20px 30px;
}
.arrow_box:after, .arrow_box:before {
	right: 100%;
	top: 50%;
	border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}

.arrow_box:after {
	border-color: rgba(255, 254, 230, 0);
	border-right-color: #fff;
	border-width: 30px;
	margin-top: -30px;
}
.arrow_box:before {
	border-color: rgba(245, 207, 17, 0);
	border-right-color: #f5cf11;
	border-width: 33px;
	margin-top: -33px;
}

/*続きを読む*/
.grad-btn {
	background-color: rgba(88,88,88,0.29);
	padding: 10px 100px;
	border-radius: 20px;
  /*.grad-btnのCSSは表示/非表示の動作には関係ないので、ご自由にどうぞ*/
}
.grad-item {
  position: relative;
  overflow: hidden;
  height: 0px; /*隠した状態の高さ*/
}
.grad-item::before {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 40px; /*グラデーションで隠す高さ*/
  background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
  background: linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
  content: "";
}
.grad-trigger {
  display: none; /*チェックボックスは常に非表示*/
}
.grad-trigger:checked + .grad-btn {
  display: none; /*チェックされていたら、grad-btnを非表示にする*/
}
.grad-trigger:checked ~ .grad-item {
  height: auto; /*チェックされていたら、高さを戻す*/
}
.grad-trigger:checked ~ .grad-item::before {
  display: none; /*チェックされていたら、grad-itemのbeforeを非表示にする*/
}

	.footer_sns a{
		font-size:3rem;
		padding: 0 20px;
		font-weight:bold;
	}
	.button_short{
	margin-top: 100px;
}
	footer p{
		font-weight: 600;
	}
	.tab_on{
		display:none;
	}
	
}