@charset "utf-8";
body {
	font: normal 18px/1.7 "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ",Meiryo,"ＭＳ Ｐゴシック",Arial,Verdana,sans-serif;
	text-align: left;
	color:#000;
	text-align: justify;
	overflow-x: hidden;
}

body .sp-item {
    display: none !important; }
  body .pc-item {
    display: block !important; }

  @media screen and (max-width: 640px) {
    body {
      min-width: inherit;
	  height:100%;
	  }
      body .sp-item {
        display: block !important; }
      body .pc-item {
        display: none !important; }
	  body .sp-item img {
		width:100%;}
}

@media screen and (max-width: 640px) {
	.sp img{
		max-width:90%;
}
	.sp02 img{
		max-width:100%;
}
.sp03 img{
		max-width:70%;
}
}

.fl_left {
	float: left;
}
.fl_right {
	float: right;
}
.ov_hd {
	overflow: hidden;
}
.bg_none {
	background-image: none!important;
}
a.rollover:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}
.rollover:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}
.center {
	text-align: center;
}
.right {
	text-align:right;
}
.line_0 {
	line-height: 0;
}
.zindex {
	z-index: 200;
}
input[type=radio] {
	width: 15px;
	height: 15px;
	vertical-align: middle;
}
input[type=image]:hover{
		opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
	}


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

    text

---------------------------------------------------- */
em {
	text-decoration: underline;
  font-style: normal;
}
.bd_red {
	border-bottom: 1px solid #FF0004;
	padding-bottom: 2px;
}
.bd_red02 {
	border-bottom: 3px solid #FF0004;
	padding-bottom: 0px;
}
.red {
	color: #ff0000;
}
.yellow {
	background-color: #ffff00;
}
.gray {
	color:#666666;
}
.bold {
	font-weight: bold;
}
strong {
	font-weight: bold;
}
.strike {
	text-decoration: line-through;
}
.ac {
	text-align: center !important;
}
.ar {
	text-align: right !important;
}
.al {
	text-align: left !important;
}
.bold {
	font-weight: bold !important;
}
.font10 {
	font-size: 10px !important;
}
.font11 {
	font-size: 11px !important;
}
.font12 {
	font-size: 12px !important;
}
.font13 {
	font-size: 13px !important;
}
.font14 {
	font-size: 14px !important;
}
.font15 {
	font-size: 15px !important;
}
.font16 {
	font-size: 16px !important;
}
.font17 {
	font-size: 17px !important;
	line-height:150%;
}
.font18 {
	font-size: 18px !important;
}
.font19 {
	font-size: 19px !important;
}
.font20 {
	font-size: 20px !important;
}
.font21 {
	font-size: 21px !important;
}
.font22 {
	font-size: 22px !important;
}
.font23 {
	font-size: 23px !important;
}
.font24 {
	font-size: 24px !important;
}
.font25 {
	font-size: 25px !important;
}
.font26 {
	font-size: 26px !important;
}
.font27 {
	font-size: 27px !important;
}
.font28 {
	font-size: 28px !important;
}
.font29 {
	font-size: 29px !important;
}
.font30 {
	font-size: 30px !important;
}
.font32 {
	font-size: 32px !important;
}
/* ----------------------------------------------------

    float

---------------------------------------------------- */
.fr {
	float: right !important;
}
.fl {
	float: left !important;
}
.clear {
	clear: both;
}
img {
	line-height: 0;
	padding: 0;
	margin: 0;
}
.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
.clearfix {
	min-height: 1px;
}
* html .clearfix {
	height: 1px;/*¥*//*/
  height: auto;
  overflow: hidden;
  /**/
}

hr {
	height: 0;
	margin: 0;
	padding: 0;
	border: 0;
}
/* ----------------------------------------------------
    clearfix の代用
    &#60;div class="hr"&#62;&#60;hr /&#62;&#60;/div&#62;
---------------------------------------------------- */

/* ここから書いていきましょう */
header {
	text-align: center;
	padding-top: 88px;
}

.logoctakotei {
	background-color: #fff;
	display: flex;
	padding: 8px 0;
	align-items: center;
  justify-content: space-around;
	width: 100%;
	position: fixed;
	top: 0px;
	z-index: 1;
}

.p-head {
	background: #000;
	padding: 12px 0;
	color: #fff;
	font-weight: bold;
	font-size: 45px;
	letter-spacing: 0.1em;
}

.main {
	margin-top: 20px;
	padding-bottom: 20px
}

@keyframes mobile-scroll-left {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-100%);
	}
}

.scroll_wrap {
	background-color: #000;
	padding: 10px 0;
	display: flex;
	overflow: hidden;	
	z-index: 2;
}

.scroll_list {
	display: flex;
	list-style: none;
}

.scroll_list--left {
	animation: mobile-scroll-left 40s infinite linear 1s both;
}

.scroll_left_item{
	width: calc(100vw / 8);
}

@media screen and (max-width: 640px) {
	header {
		text-align: center;
		padding-top: 49px;
	}
	
	.logoctakotei {
		background-color: #fff;
		display: flex;
		padding: 8px 0;
		align-items: center;
		justify-content: flex-start;
		width: 100%;
		position: fixed;
		top: 0px;
		z-index: 1;
	}
	
	.logo {
		width: 15%;
		padding-left: 3%;
	}

	.cta {
		width: 40%;
		padding-left: 40%;
	}

	.p-head {
		padding: 15px 0;
		color: #fff;
		font-weight: bold;
		font-size: 24px;
		letter-spacing: 0.1em;
		line-height: 1.2;
	}
	
	.main {
		margin-top: 5px;
		padding-bottom: 10px
	}
	
	@keyframes mobile-scroll-left {
		from {
			transform: translateX(0);
		}
		to {
			transform: translateX(-100%);
		}
	}
	
	.scroll_wrap {
		background-color: #000;
		padding: 10px 0;
		display: flex;
		overflow: hidden;	
		z-index: 2;
	}
	
	.scroll_list {
		display: flex;
		list-style: none;
	}
	
	.scroll_list--left {
		animation: mobile-scroll-left 40s infinite linear 1s both;
	}
	
	.scroll_left_item{
		width: calc(100vw / 3);
	}

	.scroll img {
		width: 100%;
	}
}

/* area01 */
.area01 {
	text-align: center;
	padding: 48px 0 54px;
}

.area01 h2 {
	margin-bottom: 68px;
}

.koe01 {
	margin-bottom: 56px;
}

.koe02 {
	padding: 50px 0;
	margin-bottom: 56px;
	background: #f4f4f4;
}

.area01 h3 {
	margin-bottom: 30px;
}

.area01 .shashin {
	margin-bottom: 15px;
}

.area01 h4 {
	font-size: 40px;
	font-weight: bold;
	line-height: 1.2;
	letter-spacing: 0.08em;
	margin-bottom: 32px;
}

.area01 p {
	width: 588px;
    margin: 0 auto;
    text-align: left;
    font-size: 28px;
		line-height: 1.4;
}

mark {
	background: linear-gradient(transparent 20%, yellow 0%);
}

.chuushaku {
	text-align: left;
	margin: 19px auto 0;
	width: 588px;
	font-size: 20px;
}

@media screen and (max-width: 640px) {
	.area01 {
		text-align: center;
		padding: 34px 0 40px;
	}
	
	.area01 h2 {
		margin-bottom: 50px;
	}
	
	.koe01 {
		margin-bottom: 45px;
	}
	
	.koe02 {
		margin-bottom: 40px;
	}
	
	.area01 h3 {
		margin: 0 auto 9px;
		width: 94%;
	}
	
	.area01 .shashin {
		margin: 0 auto 12px ;
		width: 68%;
	}
	
	.area01 h4 {
		font-size: 35px;
		font-weight: bold;
		line-height: 1.2;
		letter-spacing: 0.08em;
		margin-bottom: 9px;
	}
	
	.area01 p {
		width: 95%;
			margin: 0 auto;
			text-align: left;
			font-size: 22px;
			line-height: 1.5;
	}
	
		.chuushaku {
		text-align: left;
		margin: 19px auto 0;
		width: 96%;
		font-size: 16px;
	}
}

/* area02 */
.area02 {
	text-align: center;
}

.area02_h {
	background-color: #000;
	padding: 45px 0;
	color: #fff;
	font-size: 80px;
	font-weight: bold;
	letter-spacing: 0.1em;
	border-bottom: solid 5px;
	border-image: linear-gradient(45deg,#f0cc7e,   /* 明るいゴールド */
    #f4db8c,   /* 少し薄いゴールド */
    #f9f3e5,   /* 薄いクリーム */
    #c78a03,   /* 濃いゴールド */
    #e3b75e,   /* 中間のゴールド */
    #efca84,   /* 明るめのゴールド */
    #f3d994,   /* さらに明るいゴールド */
    #d6a233    /* 深みのあるゴールド */);
		border-image-slice: 1; 
}

.jisseki_area {
	padding: 61px 0 106px;
	background-image: url(../images/area02_bg.jpg) ;
}

.jisseki01 {
	margin-bottom: 106px;
}
.jisseki02 {
	margin-bottom: 106px;
}

.area02 h2 {
	color: #000;
	width: fit-content;
	margin: 0 auto 33px;
	font-size: 48px;
	font-weight: normal;
	border-bottom: #000 dashed 1px;
	line-height: 1.1;
}

@media screen and (max-width: 640px) {

	.area02_h {
		padding: 20px 0;
		font-size: 63px;
		font-weight: bold;
		letter-spacing: 0.05em;
	}
	
	.jisseki_area {
		padding: 50px 0 1px;
		background-image: url(../images/area02_bg.jpg) ;
	}
	
	.jisseki01 {
		margin-bottom: 82px;
	}
	.jisseki02 {
		margin-bottom: 82px;
	}
	
	.area02 p {
		width: 98%;
		margin: 0 auto;
	}

	.area02 h2 {
		color: #000;
		width: fit-content;
		margin: 0 auto 22px;
		font-size: 30px;
		font-weight: normal;
		border-bottom: #000 dashed 1px;
		line-height: 1.1;
	}
}

/* area03 */
.area03 {
	background-color: #cccccc;
	padding: 19px 0 53px;
	text-align: center;
}

.area03_h {
	margin-bottom: 13px;
}

.area03_list {
	background: #fff;
	width: 577px;
	margin: 0 auto;
	padding: 25px 25px;
	text-align: left;
}

.area03_list li {
	background: url(../images/checkbox.png) no-repeat top 5px left;
	font-size: 28px;
	font-weight: normal;
	padding-left: 34px;
	line-height: 1.2;
	margin-bottom: 20px;
	letter-spacing: 0.05em;
}

.under {
	background: linear-gradient(transparent 50%, yellow 50%);
}

@media screen and (max-width: 640px) {
	.area03 {
		padding: 38px 0 46px;
	}
	
	.area03_h {
		margin:0 auto 15px;
		width: 98%;
	}
	
	.area03_list {
		background: #fff;
		width: 86%;
		margin: 0 auto;
		padding: 10px 10px;
		text-align: left;
	}
	
	.area03_list li {
		background: url(../images/checkbox.png) no-repeat top 1% left;
		font-size: 18px;
		font-weight: normal;
		padding-left: 34px;
		line-height: 1.2;
		margin-bottom: 20px;
		letter-spacing: 0.05em;
	}
	
	.under {
		background: linear-gradient(transparent 50%, yellow 50%);
	}
	
}

/* area05 */
.area05 {
	text-align: center;
	padding: 72px 0 55px;
}

.mitsuyaji {
	margin: -95px 0 23px;
}

.area05_h {
	margin-bottom: 15px;
}

.area05 p {
	width: 577px;
	margin: 0 auto;
	text-align: left;
	font-size: 28px;
	line-height: 1.6;
	letter-spacing: 0.08em;
}

@media screen and (max-width: 640px) {
	.area05 {
		padding: 72px 0 45px;
	}
	
	.mitsuyaji {
		margin: -95px 0 23px;
	}
	
	.area05_h {
		margin: 0 auto;
		width: 98%;
	}
	
	.area05 p {
		width: 94%;
		margin: 0 auto;
		text-align: left;
		font-size: 18px;
		line-height: 1.6;
		letter-spacing: 0.08em;
	}
}

/* area06 */
.area06 {
	text-align: center;
	padding: 51px 0 1px;
	background-color: #ffffe0;
}

.area06_h {
	margin-bottom: 72px;
}

.riyuu_box_h {
	width: 577px;
	display: flex;
  margin: 0 auto 18px;
	justify-content: space-between;
	align-items: center;
}

.number {
	width: 108px;
}

.area06 h3 {
	font-size: 40px;
	font-weight: bold;
	text-align: left;
	color: #b4000f;
	line-height: 1.2;
	letter-spacing: 0.04em;
	width: 460px;
}

.gz {
	margin-bottom: 22px;
}

.area06 p {
	width: 562px;
	background: #fff;
	padding: 26px 26px;
	margin: 0 auto 73px;
	text-align: left;
	font-size: 30px;
	line-height: 1.4;
	letter-spacing: 0.08em;
}

.area06 span {
	color: #b4000f;
}

@media screen and (max-width: 640px) {
	.area06 {
		padding: 44px 0 1px;
	}
	
	.area06_h {
		margin: 0 auto 40px;
		width: 95%;
	}
	
	.riyuu_box_h {
		width: 96%;
		display: flex;
		margin: 0 auto 10px;
		justify-content: space-between;
		align-items: center;
	}
	
	
	.area06 h3 {
		font-size: 24px;
		font-weight: bold;
		text-align: left;
		color: #b4000f;
		line-height: 1.2;
		letter-spacing: 0.04em;
		width: 79%;
		padding-left: 5px;
	}
	
	.gz {
		width: 90%;
		margin:0 auto 14px;
	}

	.riyuu_bg {
		background: #fff;
		width: 92%;
		margin: 0 auto 40px;
		padding: 0 0;
	}
	
	.area06 p {
		width: 86%;
		margin: 0 auto;
		text-align: left;
		font-size: 18px;
		line-height: 1.4;
		letter-spacing: 0.08em;
	}
	
	.area06 span {
		color: #b4000f;
	}
}

/* area07 */
.area07 {
	text-align: center;
}

.area07 h2 {
	color: #fff;
	font-size: 84px;
	font-weight: bold;
	background: #000;
	padding: 38px 0;
	letter-spacing: 0.08em;
}

.hiyou {
	background-image: url(../images/area07_bg.png);
	background-size: cover;
	padding: 56px 0 68px;
}

.LP {
	margin-bottom: 21px;
}

@media screen and (max-width: 640px) {
	
	.area07 h2 {
		font-size: 63px;
		padding: 20px 0;
		letter-spacing: 0.08em;
	}
	
	.hiyou {
		background-image: url(../images/area07_bg.png);
		background-size: cover;
		padding: 53px 0 60px;
	}
	
	.LP {
		width: 96%;
		margin:0 auto 21px;
	}

	.banner {
		width: 96%;
		margin: 0 auto;
	}
}

/* area08 */
.area08{
	text-align: center;
	padding: 56px 0 81px;
}

.area08 h2 {
	margin: 0 auto 61px;
	width: 500px;
	background: #000;
	color: #fff;
	font-size: 48px;
	font-weight: bold;
	letter-spacing: 0.08em;
}

.area08 h3 {
	margin-bottom: 10px;
}

.nagare_box {
	width: 590px;
	margin: 0 auto 30px;
	display: flex;
	justify-content: space-between;
}

.step_box {
	text-align: left;
}

.area08 p {
	font-size: 28px;
	line-height: 1.5;
}

.kuroya {
	margin-bottom: 35px;
}

@media screen and (max-width: 640px) {
	.area08{
		padding: 54px 0 31px;
	}
	
	.area08 h2 {
		margin: 0 auto 50px;
		width: 90%;
		background: #000;
		color: #fff;
		font-size: 34px;
		font-weight: bold;
		letter-spacing: 0.08em;
	}
	
	.area08 h3 {
		width: 55%;
		margin-bottom: 10px;
	}
	
	.nagare_box {
		width: 98%;
		margin: 0 auto 24px;
		display: flex;
		justify-content: space-between;
	}
	
	.step_box {
		width: 98%;
		text-align: left;
		padding-left: 5px;
	}
	
	.area08 p {
		width: 98%;
		font-size: 18px;
	}

	.kuroya {
		width: 12%;
		margin: 0 auto 34px;
	}
}

/* area09 */
.area09{
	text-align: center;
	background: #ffffe0;
	padding: 62px 0 60px;
}

.area09 h2 {
	color: #000;
	font-size: 82px;
	font-weight: bold;
	border-top: 4px solid #000;
	border-bottom: 4px solid #000;
	width: fit-content;
	margin: 0 auto 27px;
}

.jibun {
	margin-bottom: 34px;
}

.area09 h3 {
	color: #000;
	font-size: 46px;
	font-weight: bold;
	margin-bottom: 29px;
}

.area09 p {
	width: 560px;
	text-align: left;
	line-height: 1.5;
	margin: 0 auto;
	font-size: 28px;
}

@media screen and (max-width: 640px) {
	.area09{
		padding: 59px 0 50px;
	}
	
	.area09 h2 {
		color: #000;
		font-size: 58px;
		font-weight: bold;
		border-top: 4px solid #000;
		border-bottom: 4px solid #000;
		width: fit-content;
		margin: 0 auto 24px;
	}
	
	.jibun {
		margin: 0 auto 34px;
		width: 70%;
	}
	
	.area09 h3 {
		color: #000;
		font-size: 30px;
		font-weight: bold;
		margin-bottom: 20px;
	}
	
	.area09 p {
		width:95%;
		text-align: left;
		line-height: 1.5;
		margin: 0 auto;
		font-size: 20px;
	}
}

/* area10 */
.area10 {
	text-align: center;
	padding: 51px 0 0;
}

.area10 h2 {
	font-weight: bold;
	font-size: 84px;
	background: linear-gradient(135deg,  #c20407 0%,#ff1d00 23%,#c9110e 49%,#ff1d00 77%,#d11f15 100%);
	-webkit-background-clip: text;
	 -webkit-text-fill-color: rgba(255,255,255,0.0);
	margin-bottom: 60px;
}

.qanda {
	margin-bottom: 40px;
}

.qanda_z {
	margin-bottom: 69px;
}

.Q {
	background: url(../images/Q.png) no-repeat top 5px left;
	color: #b4000f;
	font-size: 28px;
	font-weight: normal;
	line-height: 1.5;
	text-align: left;
	width: 576px;
	margin: 0 auto 13px;
	padding-left: 30px;
}

.A {
	background: url(../images/A.png) no-repeat top 5px left;
	color: #000;
	font-size: 28px;
	font-weight: normal;
	line-height: 1.5;
	text-align: left;
	width: 576px;
	margin: 0 auto;
	padding-left: 30px;
}

@media screen and (max-width: 640px) {
	.area10 {
		padding: 51px 0 0;
	}
	
	.area10 h2 {
		font-size: 60px;
		margin:0 auto 35px;
		width: 98%;
	}
	
	.qanda {
		margin-bottom: 40px;
	}
	
	.qanda_z {
		margin-bottom: 40px;
	}
	
	.Q {
		background: url(../images/Q.png) no-repeat top 2% left 1.8%;
		background-size: 6%;
		font-size: 20px;
		line-height: 1.5;
		width: 86%;
		margin: 0 auto 13px;
		padding-left: 30px;
	}
	
	.A {
		background: url(../images/A.png) no-repeat top 0.5% left 1.8%;
		background-size: 6%;
		font-size: 20px;
		line-height: 1.5;
		width: 86%;
		margin: 0 auto;
		padding-left: 30px;
	}
	
}

/* area11 */
.area11 {
	text-align: center;
}

.triangle {
  position: relative;
  background: #000;
	padding: 25px 0;
	color: #fff;
	font-size: 87px;
	font-weight: bold;
	letter-spacing: 0.08em;
}

.triangle::before {
  content: '';
  position: absolute;
  bottom: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 100px 100px 0 100px;
  border-color: #000 transparent transparent transparent;
  left: 50%;
  transform: translateX(-50%) translateY(100%);
}

@media screen and (max-width: 640px) {
	.area11 {
		text-align: center;
	}
	
	.triangle {
		position: relative;
		padding: 25px 0;
		color: #fff;
		font-size: 53px;
		font-weight: bold;
		letter-spacing: 0.08em;
	}
	
	.triangle::before {
		content: '';
		position: absolute;
		bottom: 0;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 50px 50px 0 50px;
		border-color: #000 transparent transparent transparent;
		left: 50%;
		transform: translateX(-50%) translateY(100%);
	}
	
}

/* area11 */
@media screen and (max-width: 640px) {
	.formrun {
		padding: 80px 0 40px;
		text-align: center;
	}

	.formrun h2 {
		margin: 0 auto;
		font-size: 18px;
	}

	.ctabtn {
		width: 96%;
		margin: 0 auto;
	}
}