@charset "UTF-8";

body {
  margin: 0;
  padding: 0;
}
.scroll-area {
  width: 100%;
  height: 100vh;
  overflow: auto;
  -webkit-scroll-behavior: smooth;
  scroll-behavior: smooth;
  -webkit-scroll-snap-type: mandatory;
  scroll-snap-type: mandatory;
  -webkit-scroll-snap-points-y: repeat(100%);
  scroll-snap-points-y: repeat(100%);
}
.box {
  width: 100%;
  height: 70vh;
  font-size: 100px;
  display: flex;
  align-items: center; /* 縦方向中央揃え */
  justify-content: center; /* 横方向中央揃え */
  flex-direction: column;
}
.box__bg_black {
  background-color: #333;
}
.box__bg_gray {
  background-color: #fff;
	font-size: 14px;
	
}
.box__bg_gray02 {
  background-color: #f4f4f4;
	font-size: 14px;
	
}
.box__bg_photo {
  background-image: url(../img/entrance/bg.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  margin-top: 8%;	
}
.etx01 {
	color:#000;
	font-size: 16px;
}
h1 {
	color:#000;
	font-size: 14px;
	top:0;
	left: 0;
	margin-left: 10px;
	margin-top: 10px;
	text-align: center;
	
}
h2 {
  color:#000;
	font-size: 14px;
	top:0;
	left: 0;
	margin-left: 10px;
	margin-top: 10px;
	text-align: center;
}
h3 {
  margin: 0;
  padding: 0;
  line-height: 1.5;
	font-size: 2vw;
	color:#000;
	font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	font-weight: bold;
	margin-bottom: 20px;
	text-shadow: 0 0 10px rgba(255, 255, 255, .9);
}

.ent_button_wrap {
	width: 780px;
	margin: 0px auto;
}

ul#ent_button  {
	list-style: none;
    display: flex;
    flex-flow: wrap;
    width: 100%;
    justify-content: space-between;
	margin-bottom: 30px;
	margin-top: 20px;
}
ul#ent_button li {
    box-sizing: border-box;
    width: 48%;
	margin: 0px auto 0px auto;
	line-height: 150%;
	font-size: 14px;
}

.sec02_link {
	position: relative;
	display: inline-block;
	padding: .9em 1em;
	background-color: #a70100;
	border: 2px solid #a70100;
	color: #a70100;
	text-align: center;
	text-decoration: none;
	transition: all .3s;
	margin-top:0px;
	margin-bottom:10px;
	width:320px;
	font-size:18px;
	border-radius: 4px;
	font-weight: bold;
	
}
.sec02_link::after {
	position: absolute;
	top: 50%;
	right: .2em;
	content: '';
	margin-top: -5px;
	border: 7px solid transparent;
	border-top-width: 5px;
	border-bottom-width: 5px;
	border-left-color: #fff;
	transition: all .3s;
}
.sec02_link:link {
	color: #fff;
}
.sec02_link:visited {
	color: #fff;
}
.sec02_link:hover {
	background-color: #fff;
	color: #8d8c8c;
	text-decoration:none;
}
.sec02_link:hover::after {
	border-left-color: #8d8c8c;
}

.box02 {
	width: 900px;
	margin: 0px auto;
	padding: 40px 0px;
}



h4 {
	font-size: 16px;
	
}


footer {
	padding-top:20px;
	padding-bottom:20px;
	background-color: #dcd0bd;
	margin-top: -8px;
}

	.sample-box {
    position: relative;
}

.good {
    width: 50px;
    height: 50px;

    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.5rem;
    border-radius: 50%;
    cursor: pointer;
    
    position: absolute;
    top: 55%;
    left: 120%;
}

.copy {
	font-size:12px;
	text-align: center;
	color:#fff;
}

 .br-pc { display:none; }
	
  .br-sp { display:none; }
	.br-ssp { display:none; }

@media screen and (max-width: 949px) {
  .br-pc { display:block; }
	
  .br-sp { display:block; }
	.br-ssp { display:none; }
}
@media screen and (max-width: 650px){	
  .br-pc { display:none; }
  .br-sp { display:block; }
	.br-ssp { display:block; }
}


/*----------------------------------

タブレット
 
---------------------------------- */
@media screen and (max-width: 949px) {
	
.etx01 {
	color:#000;
	font-size: 16px;
	
}
h1 {
	color:#000;
	position: absolute;
	font-size: 14px;
	top:0;
	left: auto;
	margin-left: 0px;
	margin-top: 10px;
	
}
h2 {
  color:#000;
	position: absolute;
	font-size: 14px;
	top:0;
	left: auto;
	margin-left: 0px;
	margin-top: 10px;
}
h3 {
  margin: 0;
  padding: 0;
  line-height: 1.5;
	font-size: 3.5vw;
	color:#000;
	font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	font-weight: bold;
	margin-bottom: 20px;
	text-shadow: 0 0 10px rgba(255, 255, 255, .9);
	text-align: center;
}

.ent_button_wrap {
	width: auto;
	margin: 0px auto;
}

ul#ent_button  {
	list-style: none;
    display: flex;
    flex-flow: wrap;
    width: 100%;
    justify-content: space-between;
	margin-bottom: 30px;
}
ul#ent_button li {
    box-sizing: border-box;
    width: 100%;
	margin: 0px auto 0px auto;
	line-height: 150%;
	font-size: 14px;
}

.sec02_link {
	position: relative;
	display: inline-block;
	padding: .9em 1em;
	background-color: #aa0000;
	border: 2px solid #aa0000;
	color: #a70100;
	text-align: center;
	text-decoration: none;
	transition: all .3s;
	margin-top:0px;
	margin-bottom:10px;
	width:320px;
	font-size:18px;
	border-radius: 4px;
	font-weight: bold;
	
}
.sec02_link::after {
	position: absolute;
	top: 50%;
	right: .2em;
	content: '';
	margin-top: -5px;
	border: 7px solid transparent;
	border-top-width: 5px;
	border-bottom-width: 5px;
	border-left-color: #fff;
	transition: all .3s;
}
.sec02_link:link {
	color: #fff;
}
.sec02_link:visited {
	color: #fff;
}
.sec02_link:hover {
	background-color: #fff;
	color: #aa0000;
	text-decoration:none;
}
.sec02_link:hover::after {
	border-left-color: #fff;
}

.box02 {
	width: auto;
	margin: 0px 20px;;
	padding: 40px 0px;
}

	.cp_container{
		margin-top: 150px;
	}

h4 {
	font-size: 16px;
	
}


footer {
	padding-top:20px;
	padding-bottom:20px;
	background-color: #1b1b1b;
	margin-top: -8px;
}

.copy {
	font-size:12px;
	text-align: center;
	color:#959595;
}

}


/*----------------------------------

スマホ
 
---------------------------------- */
@media screen and (max-width: 750px) {
	
.etx01 {
	color:#000;
	font-size: 14px;
	margin: 0px 10px 16px 10px;
	text-align: center;
}
h1 {
	color:#000;
	position: absolute;
	font-size: 12px;
	top:0;
	left: auto;
	margin-left: 5px;
	margin-right: 5px;
	margin-top: 10px;
	line-height: 140%;
	margin-bottom: 10px;
	
}
h2 {
  color:#000;
	position: absolute;
	font-size: 12px;
	top:0;
	left: auto;
	margin-left: 5px;
	margin-right: 5px;
	margin-top: 10px;
	line-height: 140%;
	margin-bottom: 10px;
}
h3 {
  margin: 0;
  padding: 0;
  line-height: 1.5;
	font-size: 3.5vw;
	color:#000;
	font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	font-weight: bold;
	margin-bottom: 20px;
	text-shadow: 0 0 10px rgba(255, 255, 255, .9);
	text-align: center;
}

.ent_button_wrap {
	width: auto;
	margin: 0px auto;
}

ul#ent_button  {
	list-style: none;
    display: flex;
    flex-flow: wrap;
    width: 100%;
    justify-content: space-between;
	margin-bottom: 30px;
}
ul#ent_button li {
    box-sizing: border-box;
    width: 100%;
	margin: 0px auto 0px auto;
	line-height: 150%;
	font-size: 14px;
}

.sec02_link {
	position: relative;
	display: inline-block;
	padding: .9em 1em;
	background-color: #aa0000;
	border: 2px solid #aa0000;
	color: #a70100;
	text-align: center;
	text-decoration: none;
	transition: all .3s;
	margin-top:0px;
	margin-bottom:10px;
	width:80%;
	font-size:16px;
	border-radius: 4px;
	font-weight: bold;
	
}
.sec02_link::after {
	position: absolute;
	top: 50%;
	right: .2em;
	content: '';
	margin-top: -5px;
	border: 7px solid transparent;
	border-top-width: 5px;
	border-bottom-width: 5px;
	border-left-color: #fff;
	transition: all .3s;
}
.sec02_link:link {
	color: #fff;
}
.sec02_link:visited {
	color: #fff;
}
.sec02_link:hover {
	background-color: #fff;
	color: #aa0000;
	text-decoration:none;
}
.sec02_link:hover::after {
	border-left-color: #fff;
}

.box02 {
	width: auto;
	margin: 0px 10px;;
	padding: 20px 0px;
}



h4 {
	font-size: 14px;
	
}


footer {
	padding-top:20px;
	padding-bottom:20px;
	background-color: #1b1b1b;
	margin-top: -8px;
}

.copy {
	font-size:12px;
	text-align: center;
	color:#959595;
}
	
	.box__area img {
		width: 80%;
		text-align: center;
	}
	.cp_box *, .cp_box *:before, .cp_box *:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.cp_box {
	position: relative;
}
.cp_box label {
	position: absolute;
	z-index: 1;
	bottom: 0;
	width: 100%;
	height: 140px; /* グラデーションの高さ */
	cursor: pointer;
	text-align: center;
	/* 以下グラデーションは背景を自身のサイトに合わせて設定してください */
	background: linear-gradient(to bottom, rgba(250, 252, 252, 0) 0%, rgba(250, 252, 252, 0.95) 90%);
}
.cp_box input:checked + label {
	background: inherit; /* 開いた時にグラデーションを消す */
}
.cp_box label:after {
	line-height: 2.5rem;
	position: absolute;
	z-index: 2;
	bottom: 20px;
	left: 50%;
	width: 16rem;
	font-family: FontAwesome;
	content: '\f13a'' 続きをよむ';
	transform: translate(-50%, 0);
	letter-spacing: 0.05em;
	color: #ffffff;
	border-radius: 20px;
	background-color: rgba(27, 37, 56, 1);
}
.cp_box input {
	display: none;
}
.cp_box .cp_container {
	overflow: hidden;
	height: 250px; /* 開く前に見えている部分の高さ */
	transition: all 0.5s;
}
.cp_box input:checked + label {
	/* display: none ; 閉じるボタンを消す場合解放 */
}
.cp_box input:checked + label:after {
	font-family: FontAwesome;
	content: '\f139'' 閉じる';
}
.cp_box input:checked ~ .cp_container {
	height: auto;
	padding-bottom: 80px; /* 閉じるボタンのbottomからの位置 */
	transition: all 0.5s;
}
	

}