@charset "UTF-8";

/*****************************************************************

    header

*****************************************************************/
header { width: 100%; margin: 0;
	padding: 12.5% 0;
	background: #e73819 url("../image/back_header.png") bottom center;
	background-size: 160% auto;
}

.badge_header {
	width: 90%;
	max-width: 938px;
	margin: 0% auto;
	text-align: center;
}

/* about------------------------------------------------------------------------------*/

.about_box {
	width: 90%;
	max-width: 1300px; 
	margin: 12.5% auto;
	padding: 0;
	position: relative;
}

.about_photo { }

.txt_box {
	z-index: 1000;
	margin: 8.5% auto 0;
	font-size: 1.8rem;
	line-height: 2;
	font-weight: bold;
}

.about_sub_txt { margin: 6.5% auto 0; font-size: 1.2rem; font-weight: normal;}

/* info------------------------------------------------------------------------------*/

.info_area { width: 100%; }
.info_box{ width: 100%; color: #ffffff; }

.hbc_unit , .atsuma_unit { padding: 12.5% 5%; }
.hbc_unit { 
	background: #d70b24 url("../image/back_info_cross.svg") bottom -20px center no-repeat;
	background-size: 40px;
}
.atsuma_unit { 
	background: #25a739 url("../image/back_info_cross.svg") top -20px center no-repeat;
	background-size: 40px;
}

.info_box h3 { width: 100%; margin: 0 auto 6.875% ; }
.info_box figure { margin: 4.6875% auto 0; }

/* present------------------------------------------------------------------------------*/

.present_box {
	width: 90%;
	max-width: 1220px; 
	margin: 12.5% auto;
	padding: 0;
}

.present_box h2 img { 
	width: 60%;
	max-width: 456px;
	margin: 0 auto 9.375%;
}

.present_photo { width: 80%; margin: 0 auto; }
.present_txt { margin: 9.375% auto; font-weight: bold; text-align: center; }
.present_sub_txt { margin: 3.5% auto 0; font-size: 1.2rem; font-weight: normal;}

/*ボタン---------------------------------------------------------------------*/
.btn { margin: 10.9375% auto; }

.btn a{
	display: block;
    width: 260px;
    margin: 0 auto;
	position: relative;
    padding: 16px 24px 16px 0;
	line-height: 1;
    border-radius: 2px;
    background: #0b0b0b;
	text-align: center;
	color: #ffffff;
	font-size: 1.4rem;
	font-weight: 700;
}

.btn a:hover , .btn a:active{
    color: #ffffff;
	background: #666666;
}

.btn a::after {
	position: absolute;
	font-weight: normal;
	content:"→";
    line-height: 1;
    top: calc(50% - 6px);
    right: calc(50% - 60px);
	height: 1.6rem;
	width: 1.6rem;
}


/*****************************************************************

     responsive

*****************************************************************/
@media screen and (min-width: 540px) {/*タブレット小-----------------------------------------------------------*/

header {
	padding: 8.5% 0;
	background: #e73819 url("../image/back_header.png") bottom 16% center;
	background-size: 140% auto;
}

.badge_header { width: 60%; }

/* present */
.present_box {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 10.5% auto;
	padding: 0;
}
	
.present_box h2{ width: 100%; }
.present_box h2 img{ width: 38%; margin: 0 auto 8.125%; }
.present_photo { width: 41.4% ; margin: 0; }
.present_txt {  width: 54% ;margin: 5.5% 0; text-align: left; }

/*ボタン*/
.btn { margin: 30px auto 0 0; }
.btn a { margin: 0 auto 0 0; }

}

@media screen and (min-width: 640px) {/*タブレット-----------------------------------------------------------*/

/* about */
.about_box { margin: 16.5% auto 10.5%; }

.about_photo {
	margin: 0 0 0 auto;
	width: 60.15%;
}

.txt_box { 
	position: absolute;
	font-size: 1.6rem;
	width: 37.5%; margin: -50% 0 10% 0; padding: 0 0 12.5% 0; }
	
/* info */	
.info_area {
	padding: 0;
	background: url("../image/back_info_cross.svg") center no-repeat,
	linear-gradient( 270deg ,#25a739 0% ,#25a739 50% ,#d70b24 50% ,#d70b24 100%) ;
	background-size:5%,100%;
}
	
.info_box {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 90%;
	max-width: 1220px;
	margin: 0% auto;
	padding: 0;

}
.info_box h3 { width: 110%;  }
.hbc_unit , .atsuma_unit { width: 42.5% ; padding: 6.5% 0; background: none; }
}

@media screen and (min-width: 768px) {/*パソコン-----------------------------------------------------------*/
.txt_box { font-size: 1.8rem; }
}

@media screen and (min-width: 960px) {/*パソコン-----------------------------------------------------------*/

/* bout */
.about_photo {}

.txt_box { 
	position: absolute;
	font-size: 2rem;
	width: 34.5%; margin: -50% 0 0 0; padding: 0 0 12.5% 0; }

.about_sub_txt ,.present_sub_txt{ font-size: 1.4rem; }

/* info */	
.info_area {
	padding: 0;
	background: url("../image/back_info_cross.svg") center no-repeat,
		linear-gradient( 270deg ,#25a739 0% ,#25a739 50% ,#d70b24 50% ,#d70b24 100%) ;
	background-size:5%,100%;
}
	

.hbc_unit , .atsuma_unit { width: 41.4% ; padding: 4.25% 0; background: none; }
.info_box h3 { width: 100%;  margin: 0 auto 7.5% ; }
.info_box figure { margin: 3.5% auto 0; }

/* present */
.present_box {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 10.5% auto 22%;
	padding: 0;
}
	
.present_box h2 { width: 100%; }
.present_box h2 img{ width: 50%; margin: 0 auto 5.75%; }
.present_photo { width: 41.4% ; margin: 0; }
.present_txt {  width: 54% ;margin: 5.5% 0; font-size: 1.8rem; text-align: left; }

/* ボタン */
.btn { margin: 35px auto 0 0; }

.btn a{
	display: block;
    width: 280px;
    margin: 0 auto 0 0;
	position: relative;
    padding: 24px 24px 24px 0;
	font-size: 1.7rem;
}

.btn a::after {
	position: absolute;
	font-weight: normal;
	content:"→";
    line-height: 1;
    top: calc(50% - 8px);
    right: calc(50% - 70px);
	height: 1.8rem;
	width: 1.8rem;
}

}

@media screen and (min-width: 1280px) {/*パソコン-----------------------------------------------------------*/
header {  background-size: 140% auto; }
.badge_header { width: 77%; }


/* about */
.about_box { margin: 200px auto 120px; }
.about_photo {  width: 66.15%; }
.txt_box {  width: 360px; margin: -54% 0 0 0; font-size: 2.4rem;}
.about_sub_txt { margin: 100px auto 0 ;font-size: 1.5rem; }

/* present */
.present_box { margin: 118px auto 270px; }
.present_box h2 img{ width: 60%; margin: 0 auto 5.75%; }
.present_sub_txt { font-size: 1.5rem; }
}

@media screen and (min-width: 1360px) {
header {
	padding: 110px 0;
	background: #e73819 url("../image/back_header.png") bottom -100px center;
	background-size: 1920px auto;
}
.txt_box {  width: 420px; margin: -54% 0 0 0; font-size: 2.4rem;}
}
