@import url(https://fonts.googleapis.com/css?family=Pacifico);
@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url(https://fonts.googleapis.com/css?family=Josefin+Sans);

/* reset */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td{margin:0;padding:0;}
address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;}
ul{list-style:none;}
table{border-collapse:collapse;border-spacing:0;}
caption,th{text-align:left;}
q:before,q:after{content:'';}
object,embed{vertical-align:top;}
legend{display:none;}
h1,h2,h3,h4,h5,h6{font-size:100%;}
img,abbr,acronym,fieldset{border:0;}

body{
	font: 14px/1.9 'Noto Sans JP', 游ゴシック, YuGothic,'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', メイリオ, Meiryo,sans-serif;
	font-weight: 300;
	-webkit-text-size-adjust:100%;
	overflow-x: hidden;
	color: #54473b;
	/*background: #faefe2;*/
	/*background: linear-gradient(180deg, rgb(215, 197, 185) 0%, rgb(157, 119, 85) 100%);*/
	background: linear-gradient(
    to right,
    rgb(210, 180, 120) 0%,
    rgb(245, 225, 170) 12%,
    rgb(180, 145, 90) 25%,
    rgb(255, 240, 200) 38%,
    rgb(170, 140, 85) 50%,
    rgb(255, 240, 200) 62%,
    rgb(180, 145, 90) 75%,
    rgb(245, 225, 170) 88%,
    rgb(210, 180, 120) 100%
	);
}

p {
    line-height: 1.6;
}

a{
	/* color: #fff; */
	text-decoration: none;
}

a:hover, .active{
  text-decoration: underline;
	color: #e94919;
}

a:active, a:focus,input:active, input:focus{outline:0;}


/* ヘッダー
------------------------------------------------------------*/
#header{
	position: relative;
    overflow:hidden;
    width:100%;
}

#header img {
    width:100%;
    height:auto;
}

.header-alt {
	width: 100%;
}

#slogan{
	width: 25%;
	position: absolute;
  	top: 50%;
	right:20px;
	-webkit-transform: translate(0, -50%);
  	transform: translate(0, -50%);
	color: #fff;
	line-height: 1.6;
	text-align: center;
/*	background-color: rgba(255,255,255,.7);
*/	padding: 2em;
}

/*#slogan h1{
	font-size: 40px;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	margin-bottom: 20px;
	font-weight:normal;
}*/

#slogan h1 img {
	width: 100%;
}

#slogan h2{
	font-size: 30px;
	font-weight:normal;
}

.slogan-tit {
	font-family:'Cinzel', serif;
	font-size: 25px;
}
.head-01.about {
  text-align: center;
  border: none;
  font-size: 1.5rem;
}
.bnar_line {
  width: 17%;
  margin: 0 auto;
  display: block;
}
.txt_line {
  text-align: center;
}
/* フッター
------------------------------------------------------------*/
#footer{
	clear: both;
	padding: 50px 10px 50px 0;
	text-align: center;
	font-size: 12px;
	background-color: #54473b;
	color: #fff;
}


/* 共通
------------------------------------------------------------*/
h1, h2{
	font-family: 'Cinzel', serif;
}

h3{
	font-size: 18px;
}

img{
	width: 100%;
	height: auto;
}

section {
	width: 100%;
	clear:both;
}

section h2{
	font-size: 40px;
	font-weight:normal;
	text-align: center;
}

.inner {
	width: 1024px;
	margin: 0 auto;
	background-color: #fff;
	padding:1em;
}

.inner-alt {
	width: 1024px;
	margin: 0 auto;
	padding-bottom: 50px;
}

.inner p, .inner-alt p {
	line-height: 2;
}

.col2 {
	vertical-align: middle;
}

.col2 li{
	display: inline-block;
	width: 100%;
  	margin: 20px 0;
}

.col2 img {
	width: 80%;
}

.col2-alt ul {
	/*flex-direction: column;*/
	margin: 2rem 1rem;
}

.col2-alt img {
	width: 60%;
	margin-bottom: 1rem;
	border-radius: 50%;
}
.col2-alt.conts img {
	width: 80%;
	margin-bottom: 1rem;
}
.col2-alt.sns_icon img{
	width: 60%;
	margin-bottom: 1rem;
	border-radius: 0 ! important;
}

#sec01,#sec02,
/* #sec03, */
#sec04,
#sec05,#sec06,
#sec07,#sec08 {
	margin: 3rem auto;
}

#sec01 h2,#sec02 h2,
#sec03 h2,#sec04 h2,
#sec05 h2,#sec06 h2,
#sec07 h2,#sec08 h2 {
	font-family:'Cinzel', serif;
	color: #e94919;
}

/* SEC01 MESSAGE
------------------------------------------------------------*/

.contact {
    text-align: center;
    margin: 4em auto 2em auto;
}
.cont_about {
    text-align: center;
    margin: 0 auto 10em;
}

.contact-btn {
  display: inline-block;
  padding: .6em 2em;
  margin: 0 0 1em;
  background-color: #e94919;
  color: #fff;
  font-size: 16px;
  cursor: pointer;
}

.contact-btn:hover {
  opacity: .6;
}

.contact h3 {
    font-size: 1.5em;
    margin-bottom: 1em;
}

.message {
	/* s */
	width: 80%;
	margin: 0 auto;
}

.message ul {
	display: flex;
	flex-wrap: wrap;
	font-size: 1.2rem;
	font-weight: bold;
	padding-left: 1em; 
	margin-bottom: 2rem;
	font-family: 'Kosugi Maru', sans-serif;
}

.message ul li {
	list-style: disc; 
	margin-bottom: 5px;
    line-height: 1.4;
	width: 50%;
}


/*sec08 SYSTEM*/

#sec08 p {
    margin-bottom:3rem;
    text-align: center;
}

.system-items {
    display:flex;
    flex-wrap:nowrap; 
    gap: 1rem;
    text-align: center;
}

.sys-item_image img {
    width:85%;
}
.step_tit {
  text-align: center;
}


@media screen and (max-width: 640px) {
    .system-items {
        flex-direction: column;
    }
    
    .sys-item_image img {
        width: 100%;
    }
}


/* .vision{
    display: inline-block;
	background-position: center;
    width: 100%;
	margin: 0 auto;
	background-image: url("../images/bg-m.jpg");
	background-repeat: no-repeat;
	height: 418px; 
}

.vision p {
  margin: 10px auto;
    line-height: 30px;
  width:400px;
	font-size: 15px;
	text-shadow: #ffffff 2px 1px 1px;
}

.vision-txt {
	padding:5em 2em 2em 2em;
	line-height: 1.6;
}

.vision-txt img {
	width: 150px;
      margin: 30px 150px;
	margin-top: 2em;
} */


/* MESSAGE レター風
------------------------------------------------------------*/
/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }
 
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 640px) {
    .pc { display: none !important; }
    .sp { display: block !important; }
}


/* SEC02 STEP
------------------------------------------------------------*/

.step {
	width: calc(100% - .5rem);
	margin: 0 auto;
	padding:2em;
}

.step h3 {
	font-size:1.2em;
	font-weight: bold;
	margin-bottom:0.5em;
}

.item {
  display: flex;
  flex-wrap: nowrap;
  margin-bottom: 1em;
}

.item:nth-child(odd) {
  flex-direction: row-reverse;
}

.item-image {
  width: 50%;
}

.item-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.item-text {
  display: flex;
  flex-wrap: wrap;
  flex: 1;
  justify-content: center;
  align-content: center;
  align-items: center;
  padding: 3em;
  background: #f2f2ea;
}

.item-text h3 {
	font-size:1.2em;
	font-weight: bold;
	color:#e94919;
	margin:0.5em 0 1em 0;
}

.step ul {
	padding-left: 1em; 
}

.step ul li {
	list-style: disc; 
	margin-bottom: 5px;
    line-height: 1.4;
}

.sec02_list ul li {
  position: relative;
  padding: 0 0 0 2em;
  margin: 0 0 10px 0;
    line-height: 1.6;
}

.sec02_list ul li::before {
  position: absolute;
  left: 0;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: '\f00c';
  color: #6eaa3a;/*#F57F17*/
}

@media screen and (max-width: 640px) {
	.step {
		padding:0.5em;
	}

	.item {
		display: flex;
		flex-wrap: wrap;
	}
	
	.item-image {
		width: 100%;
		flex-wrap: wrap;
		display: flex;
	}
	.item-text {
		width: 100%;
		padding:1em;
	}

}


/* SEC03 MEMBERSHIP
------------------------------------------------------------*/

#sec03 {
	background: url(../images/bgSec04.jpg) no-repeat 100% 100% fixed;
	background-size: cover;
	-webkit-background-size: cover;
	color: #fff;
}

.w-shadow {
	text-shadow: #ffffff 2px 0 10px;
}

.member-bnr_items {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	justify-content: center;
	gap: 1rem;
}

.member-bnr_item {
	width: calc(25% - 1rem);
}

.member-bnr_item p {
	margin-bottom: 0.2rem;
	text-align: left;
}

.member-bnr_item a {
	color: #54473b;
    font-weight: bold;
}

.member-bnr_item i {
	padding-right: .5rem;
}


/* SEC04 STORY & SUCCESS
------------------------------------------------------------*/
#sec04{
	background: url(../images/bgSec04.jpg) no-repeat 100% 100% fixed;
	background-size: cover;
	-webkit-background-size: cover;
	color: #fff;
}


/* SEC05 PROFILE
------------------------------------------------------------*/
#sec05{
	padding-top: 50px;
}

#sec05 dl{
	line-height: 1.6;
}

#sec05 dt{
	clear: left;
	float: left;
	display: block;
	width: 24%;
	/*margin-right: 10%;*/
	margin-bottom: 20px;
	/*text-align: right;*/
	line-height: 1.6em;
}

#sec05 dd{
	width: 76%;
	float: left;
	text-align: left;
	margin-bottom: 15px;
	line-height: 1.6em;
}

#sec05 header{
	display: none;
}

#map{
	position: relative;
	padding-bottom: 75%;
	height: 0;
	overflow: hidden;
}

#map iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
	border: 0;
}

#map img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
	border: 0;
}


/* SEC06 PLAN
------------------------------------------------------------*/
table.table01 {
	border-right:#cccccc solid 1px;
	border-collapse: collapse;
	width: 90%;
	margin: 0 auto;
}
table.table01 thead th {
	width: 30%;
	background:#cccccc;
	color:#000;
	padding:20px 15px;
	border-right:#FFF solid 1px;
	border-bottom:#FFF solid 1px;
	text-align: center;
}
table.table01 thead th:last-child {
	border-right:#cccccc solid 1px;
}
table.table01 tbody th {
	background:#71594d;
	color:#fff;
	padding:15px 15px;
	border-bottom:#FFF solid 1px;
	vertical-align:middle;
	text-align: center;
	width: 40%;
	line-height: 1.5;
	
}
table.table01 tbody tr:last-child th {
	border-bottom:#cccccc solid 1px;
}
table.table01 tbody td {
	background:#FFF;
	padding:15px 15px;
	border-left:#cccccc solid 1px;
	border-bottom:#cccccc solid 1px;
	vertical-align:top;
	width: 60%;
}
table.table01 tbody tr:first-child td,
table.table01 tbody tr:first-child th
{
	border-top:#cccccc solid 1px;
}

.plan-box {
	background-color: #EDF2F4;
	padding: 1em;
}

.plan-box h3 {
	font-size: 1.2em;
	font-weight: bold;
}
	

@media screen and (max-width: 640px) {
table.table01 thead {
	display:none;
}
table.table01 tbody th {
	display:block;
	width: 93%;
}
table.table01 tbody td {
	display:block;
	width: 93%;
}
table.table01 tbody td p {
	text-align: center;
}
}
/*table.table01 tbody td::before {
	content: attr(label);
	float: left;
	clear:both;
	font-weight:bold;
}*/
/*table.table01 tbody td p {
	padding-left:6em;
}*/
	

/*-- sec07 contact-------------------*/
 
#sec07 {
	padding: 0;
	line-height:normal;
}

.pp-tit {
	font-size: 20px;
	margin: 2em 0;
	color: #e94919;
	text-align: center;
	font-weight: bold;
	}

.pp-box {					/*プライバシーポリシー　box*/
  width: 95%;                /* 横幅を200pxに指定 */
  height: 400px;               /* 横幅を200pxに指定 */
  border: 1px solid #8D99AE;      /* わかりやすくボーダーを引く */
  overflow-y: scroll;          /* 縦方向にスクロール可能にする */
	padding: 1em;
	margin: 1em auto;
}

/*スクロールバーの背景色・角丸指定*/
.pp-box.deco::-webkit-scrollbar-track {
  border-radius: 10px;
	background: #ffedee;
}
/*スクロールバーの色・角丸指定*/
.pp-box.deco::-webkit-scrollbar-thumb {
  border-radius: 10px;
	background:#6eaa3a;
}

.pp-box h3 {
	/* font-family: 'Cinzel', serif; */
	font-size: 20px;
	border-bottom: solid 1px #6eaa3a;
	margin-bottom: 0.5em;
	color: #6eaa3a;
	font-weight: bold;
}


.top_icn_sns {
	width: 25%;
	margin: 1rem auto;
  }

  .top_icn_sns ul {
	display: flex;
	gap: 2rem;
  }

  .top_icn_sns li img {
	width: 100%;
  }


/* RESPONSIVE 設定
------------------------------------------------------------*/

@media only screen and (min-width: 1200px){
	section h2{
		padding: 1.8em 0 1.8em;
	}
	.txt h2{
		padding: 0 0 20px !important;
	}
}


@media only screen and (min-width: 800px){
	
  a#menu{
		display:none;
	}	

	#mainnav{
		position:fixed;
		top: 0;
		width:100%;
		z-index:500;
	}

	.panel ul{
		display:flex;
		flex-direction: row;
		justify-content: flex-end;
		align-items: center;
		padding: 1rem 2rem;
	}

    .panel ul li {
        margin: 1rem;
    }
    
	#mainnav-logo img {
		width: 30%;
	}

	#mainnav-menu ul {
		display: flex;
		justify-items: center;
	}

	#mainnav-menu li {
		margin: 1rem;
	}

	/* #mainnav ul{
		display: flex;
		text-align: right;
		padding-right: 30px;
		justify-content: space-between;
	}

	#mainnav li{
		display: inline-block;
		padding: 2em 1em 2em;
		font-size: 15px;
		font-weight: 300;
	} */
	
  #mainnav a{
		color: #fff;
	}
	
	#mainnav.changeNav{
		background: rgba(68, 53, 39, 0.9);
	}
	
	/* #mainnav.changeNav li{
		padding: 20px 10px;
	} */

	/* SEC02 MESSAGE---STEP使用-classに変更-----*/
	
	.txt, .bg{
		width: 50%;
		float: left;
		display: table;
		background: #ffedee;
	}

	#sec02_02 .txt, #sec02_02 .bg,
	#sec02_04 .txt, #sec02_04 .bg,
	#sec02_06 .txt, #sec02_06 .bg,
	#sec02_08 .txt, #sec02_08 .bg {
		float: right;
	}

	.vMid{
		display: table-cell;
		padding: 0 100px;
		vertical-align: middle;
	}
	
	.sec02_list ul li {
		list-style: none;
	}
		
	.sec02_list ul {
	  list-style: none;
	  padding: 0;
	  margin: 0;
	}
	
	.sec02_list ul li {
	  position: relative;
	  padding: 0 0 0 2em;
	  margin: 0 0 10px 0;
	}
	
	.sec02_list ul li::before {
	  position: absolute;
	  left: 0;
	  font-family: "Font Awesome 5 Free";
	  font-weight: 900;
	  content: '\f00c';
	  color: #6eaa3a;
	}
	
	
	/* SEC03 SERVICE MESSAGE STORY
	-----------------*/

	.col3{
		text-align: center;
	}
	
	.col3 h3 {
		color: #f79ca1;
		text-align: center;
		padding:0.5em 2em;
		font-weight: 500;
		font-size: 20px;
	}

	.col3 li{
		display: inline-block;
		width: 30%;
		padding: 0 1%;
		margin-bottom: 0;
		vertical-align: top;
		text-align: left;
	}

	/* .col3{
		text-align: center;
		width: 100%;
		margin: 0 auto;
	}
	
	.col3 h3 {
		color: #f79ca1;
		text-align: center;
		padding:0.5em 2em;
		font-weight: 500;
		font-size: 20px;
	}

	.col3 ul {
		display: flex;
		flex-wrap: wrap;
		flex-direction: row;
		width: 100%;
	}

	.col3 li{
		width: 30%;
		padding: 0 1%;
		margin-bottom: 0;
		vertical-align: top;
		text-align: left;
	} */
	
	/* SEC05 ABOUT
	-----------------*/
	#sec05{
		padding-top: 20px;
	}

	.col2 li dl dt {
		color: #e94919;
	}
	
  #footer{
		padding: 1rem 1rem 3rem 0;
		background-color: #54473b;
		color: #fff;
	}

	#footer img {
		width: 30%;
		margin: 1rem auto;
	}

	.footer-bnr {
		display: flex;
		flex-direction: column;
	}

}

@media only screen and (min-width: 641px){
	.col2 li{
		width: 40%;
		padding: 0 3%;
		vertical-align: top;
	}

	.col2-alt ul {
		width: 100%;
		display: flex;
	}
	
	/* 奇数 */
	.col2-alt ul:nth-child(2n+1) {
		flex-direction: row;
	}
	
	/* 偶数 */
	/*.col2-alt ul:nth-child(2n  ) {
		flex-direction: row-reverse;
	}*/
	
	.col2-alt li{
		width: 40%;
		/*padding: 0 3%;
		vertical-align: top;*/
	}
	.career {
  		padding: 8% 0 0;
	}
	.col2-alt.conts li{
		width: 40%;
		padding: 0 3%;
		vertical-align: top;
	}
}

/* 640pxまでの幅の場合に適応される */
@media only screen and (max-width: 640px){
	#map iframe{
	  width: 96% !important;
		left: 2%;
	}

}

/* 799pxまでの幅の場合に適応される　 */
@media only screen and (max-width: 799px){
	body{
		font-size:.8rem;
	}

	#slogan {
		width: 28%;
		padding:1em;
		right:5px;
	}
	
	#slogan h1{
		font-size: 31px;
	}

	#slogan h2{
		font-size: 16px;
	}
	
	#slogan h1 img {
		width: 100%;
	}
	
	#slogan p {
		font-size: 10px; 
	}
	
  a#menu{
  	display: inline-block;
  	position: relative;
  	width: 40px;
  	height: 40px;
  	margin: 10px;
    background-color:#54473b; 
	}

	#menuBtn{
  	display: block;
  	position: absolute;
  	top: 50%;
  	left: 50%;
  	width: 18px;
  	height: 2px;
  	margin: -1px 0 0 -7px;
  	background: #fff;
  	transition: .2s;
    text-align: center;
	}

	#menuBtn:before, #menuBtn:after{
  	display: block;
  	content: "";
  	position: absolute;
  	top: 50%;
  	left: 0;
  	width: 18px;
  	height: 2px;
  	background: #fff;
  	transition: .3s;
	}

	#menuBtn:before{
  	margin-top: -7px;
	}

	#menuBtn:after{
  	margin-top: 5px;
	}

	a#menu .close{
  	background: transparent;
	}

	a#menu .close:before, a#menu .close:after{
  	margin-top: 0;
	}

	a#menu .close:before{
  	transform: rotate(-45deg);
  	-webkit-transform: rotate(-45deg);
	}

	a#menu .close:after{
  	transform: rotate(-135deg);
  	-webkit-transform: rotate(-135deg);
	}

	.panel{
		width: 100%;
		display: none;
		overflow: hidden;
		position: relative;
		left: 0;
		top: 0;
		z-index: 100;
	}

	#mainnav{
		position: absolute;
		top: 0;
		right: 0;
		width: 100%;
		text-align: right;
		z-index:500;
	}

	#mainnav ul{
        padding: 2em 0;
		background: #54473b;
		text-align: center;
	}

	#mainnav li a{
		position: relative;
		display:block;
		padding:1.5em 2em;
		color: #fff;
		font-weight: 400;
	}

	#mainnav-logo img {
		display: none;
	}

	.top_icn_sns {
		width: 50%;
	}

	.member-bnr_item {
		width: calc(50% - 1rem);
	}

    .contact {
        margin: 2em auto;
    }
    
    .contact h3 {
        font-size:1.2em;
        margin-bottom: 1em;
    }
}

    
/* 1199pxまでの幅の場合に適応される */
@media only screen and (max-width: 1199px){
	.inner {
		width: calc(100% - 1em);
		margin: 1em 0;
		padding: 1em 0.5em;
	}

	.inner-alt {
		width: calc(100% - 1em);
	}
	
	section h2{
		padding: 2em 0 1em 0;
	}

	.vMid{
		padding: 0 20px;
	}
}

@media only screen and (max-width: 599px){
    .br {
        display: inline-block;
    }

	.member-bnr_items {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		width: 100%;
	}

	.member-bnr_item {
		width: calc(90% - 1rem);
	}

	.member-bnr_item p {
		font-size: 1rem;
	}
}

@media only screen and (max-width: 599px){
	.top_icn_sns {
		width: 70%;
	}
}


/*899pxまでの幅の場合に適応される */
@media only screen and (max-width: 899px){
	.message ul {
		display: flex;
		flex-direction: column;
	}
	.message ul li {
		 width: 100%;
	}

}





/*追加要素*/

.txt_bule {
	color: #6eaa3a;
	font-weight: bold;
}

.b600 {
	font-weight: 600;
}

.txt_red {
	color: #e94919;
	font-weight: bold;
}

.big-fs30 {
	font-size: 30px;
}

.fs1em {
	font-size:1.5em;
}

.bnr02 {
	padding: 2em 0 0;
  	width: 90%;
  	display: block;
  	margin: 0 auto;
}

.mb5 {
    margin-bottom: 5px;
}

.mb10{
	margin-bottom: 10px;
}
	
.mb1em {
	margin-bottom: 1em;
}

.m1em {
	margin: 1em;
}

.mb2em {
	margin-bottom: 1em;
}

.mtb2em {
    margin: 2em 0;
}

.bnr_app {
  width: 85%;
}
.bnr_app.sup{
  width: 85%;
  margin: 5% 0 3%;
}
.superiority {
  width: 85%;
  margin: 0 auto;
}
.sup {
  font-size: 1.4em;
  font-weight: bold;
  color: #623b1f;
  /*text-align: left;*/
  margin-bottom: 1.5%;
}
.s_cont {
  text-align: center;
  margin-bottom: 3%;
}
.s_cont.abt{
	text-align: center;
}
.s_cont.top {
  text-align: center;
  font-size: 1.3em;
  font-weight: 600;
  margin-bottom: 5%;
}

.shadow {
	text-shadow: 10px 10px 0 #c3a400;
}

.logo-shadow {
	filter: drop-shadow(2px 2px 3px rgb(255, 255, 255));
  }

.head-01 {
	border-left:solid 4px #e94919;
	margin: 0.5em 0 1em 0;
	font-size: 1.2rem;
	font-weight: bold;
}

.pickup01 {
    border-bottom: 3px solid #e94919;
    line-height: 1.8;
	font-family: 'Kosugi Maru', sans-serif;
}


.ta-c {
	text-align: center;
}
.top_camp {
  text-align: center;
  margin-top: 0.2em;
}
.top_messe {
  font-size: 1.4rem;
  font-weight: bold;
  margin-bottom: 0.5em;
  text-align: center;
  line-height: 1.4;
}
.cont_messe {
  text-align: center;
  font-size: 1.25em;
}
p.exp_hikaku {
  font-size: 1.3em;
  font-weight: bold;
  margin: 3% 0;
}

.motto{
  text-align: center;
  margin: 0 auto 2em auto;
}

.pht_img {
  width: 80%;
  display: block;
  margin: 0 auto 8%;
}

.getugaku {
  font-size: 1.1em;
  font-weight: bold;
}
.monthly {
  line-height: 1.3;
}
.monthly.kkt {
  line-height: 2;
}
.campaign {
  margin-bottom: 10%;
}
.turupika {
  margin-top: 5%;
  width: 90%;
  margin: 5% auto 0;
}

.turupika ul{
  list-style: none;
  width: 100%;
  display: flex;
}
.left_t {
  width: 50%;
}
.left_t img {
  width: 95%;
}
.right_t {
  width: 50%;
}
.b600.pk {
  font-size: 1.3em;
}
.chekbox > ul li {
	list-style: none;
}

.step.chk_bx {
  display: flex;
}
.chekbox {
  width: 50%;
}
.pht_rt {
  width: 50%;
}
.pht_rt img {
  display: block;
  width: 90%;
  margin: 0 auto;
}















@media screen and (max-width: 640px) {
	.cont_messe {
  	text-align: center;
  	font-size: 1em;
	}
	p.exp_hikaku {
  	font-size: 0.9em;
	}
	.sup {
  	font-size: 1.4em;
  	margin-bottom: 5%;
	}
	.pht_img {
  	width: 100%;
  	display: block;
  	margin: 0 auto 15%;
	}
	.s_cont.top {
  	text-align: center;
  	font-size: 1.2em;
  	font-weight: 600;
  	margin-bottom: 20%;
	}
	.top_camp {
    font-size: 0.8em;
    }
	.campaign {
  	margin-bottom: 15%;
	}
	.bnr02 {
  	width: 98%;
	}
	table.table01 {
	width:97%;
	margin: 0 auto;
	}
	.turupika ul {
  	flex-direction: column;
	}
	.left_t , .right_t{
  	width: 100%;
	}
	.left_t img {
  	width: 85%;
  	display: block;
  	margin: 0 auto;
	}
	.b600.pk {
  	font-size: 1.3em;
  	text-align: center;
  	display: block;
	}
	.step.chk_bx {
  	flex-direction: column;
	}
	.chekbox , .pht_rt{
  	width: 100%;
	}
	.pht_rt{
		margin-bottom: 10%
	}
	.col2-alt.sns_icon ul {
  	text-align: center;
	}

}



@media screen and (min-width: 681px){
  /* -----PC SP 改行-------- */
  .pc { display:block; }
  .sp { display:none; }
}

/*Topページの表*/
th {
  text-align: center !important;
}
.table_design08 {
  border-collapse: collapse;
  table-layout: fixed;
  width: 85%;
  max-width: 90%;
  text-align: center;
  margin: 0 auto;
}
.table_design08 th, .table_design08 td {
  border: 2px solid #b7866e;
  padding: 1em;
}
.table_design08 thead th {
  /*background-color: #64483a;*/
  color: #64483a;
  font-weight: bold;
  border: 2px solid #64483a;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  background: linear-gradient(
    to bottom,
    rgb(236, 210, 157) 0%,
    rgb(220, 190, 140) 20%,
    rgb(198, 168, 120) 40%,
    rgb(185, 150, 105) 60%,
    rgb(212, 182, 140) 80%,
    rgb(236, 210, 157) 100%
);
}
.table_design08 thead th:last-of-type {
  border-right: 2px solid #64483a;
  text-align: center!important;
}
.table_design08 tbody th {
  color: #64483a;
  font-weight: bold;
}



@media screen and (max-width: 787px) {
	
  .table_design08 {
    text-align: left;
	width: 100%;
 	max-width: 100%;
  }
  .table_design08 thead {
    display:none;
  }
  .table_design08 th, .table_design08 td {
    display: block;
    border: 0;
    border-bottom: 2px solid #e6f1f6;
  }
  .table_design08 tbody th{
    /*background: #64483a;*/
    background: linear-gradient(
    to bottom,
    rgb(236, 210, 157) 0%,
    rgb(220, 190, 140) 20%,
    rgb(198, 168, 120) 40%,
    rgb(185, 150, 105) 60%,
    rgb(212, 182, 140) 80%,
    rgb(236, 210, 157) 100%
);
    color: #64483a;
  	font-weight: bold;
  }
  .table_design08 td::before{
    content: attr(data-label);
    color: #4d9bc1;
    font-weight: bold;
    display: inline-block;
    width: 30%;
    min-width: 4em;
  }
	.bnr_app {
  	width: 100%;
	}
	.bnr_app.sup {
  	width: 100%;
  	margin: 5% 0 3%;
	}
}
　













