@charset "utf-8";
/* CSS Document */

html,body {margin: 0;padding: 0;}

body {
	background: #E05000;
-webkit-font-smoothing: antialiased;
    font-family: "IBM Plex Sans JP", sans-serif;
    font-weight: 700;
    /*font-size: 1.5rem;
	font-size: 1.7rem;
	font-size: clamp(14px, 1.0vw, 16px);*/
	font-size: clamp(14px, 3.0vw, 26px);
	line-height: 160%;
	font-feature-settings: "palt";
vertical-align: bottom;
}

h1,h2,h3,h4,h5,ul,li,dl,dt,dd {margin: 0; padding: 0; /*font-size: 100%;*/}

ul {list-style: none;}

.clearfix::after {
    content: " ";
    display: block;
    clear: both;
}

p {
margin: 0;
padding: 0;
}

img {
width: 100%;
height: auto;
}

a:hover {
    opacity: 0.8;
}
a {
    transition: opacity 0.3s ease-out;
}

#wapper {
	width: 88%;
	height: 96%;
	max-width: 750px;
	margin: 0 auto;	
}

h1{line-height: 0;}
h1 img{vertical-align: bottom;}

#block01 {
	padding: 6.6%;
	width:100%;
	box-sizing: border-box;
	background: #FFF;
}

#block01 p {
	text-align: center;
	font-weight: bold;
	line-height: 140%;
}


#block02 {
	padding: 6.6%;
	width:100%;
	box-sizing: border-box;
	background: #FCEDE5;
	margin-bottom: 10%;
}

#block02 h2 {
margin-bottom: 6%;
	color: #E05000;
	letter-spacing: 2px;
	text-align: center;
	font-size: 180%;
}

#block03 {
margin-bottom: 6%;
	padding: 6.6%;
	width:100%;
	box-sizing: border-box;
	background: #000;
	color: #FFF;
	text-align: center;
}

#block03 h2 {
margin-bottom: 5%;
	font-size: 200%;
	line-height: 140%;
	text-align: center;
}

#block03 .fs35 {
margin-top: 3%;
}

#block04 {
	margin-bottom: 10%;
	text-align: center;
}

#block04 img {
width: 80%;
	height: auto;

max-width: 390px;
}

#block04 ul{
	margin: 6% 0 0;
	padding: 0;
	list-style: none;
}

#block04 ul li {
	width: 48.6%;
	float: left;
	background: #000;
	color: #FFF;
	text-align: center;
	margin-bottom: 2.8%;
	font-size: 160%;
	line-height: 120%;
	height: 170px;
}

#block04 ul li:nth-child(2n) {
	float: right;
}

#block04 ul li a.arrow01 {
	display: block;
	width: 100%;
	height: 100%;
	position: relative; /* このaタグを基準に矢印を作成 */
	text-decoration: none;
	color: #FFF;
	padding-top: 40px;
	box-sizing: border-box;
}

#block04 ul li a.arrow01:after {
	content: '';
	position: absolute;
	bottom: 35px;
	right: 0;
	left: 0;
	margin: 0 auto;
	display: block;
	width: 30px;
	height: 30px;
	border-top: 5px solid #FFF; /* 線の太さ */
	border-right: 5px solid #FFF; /* 線の太さ */
	transform: rotate(135deg);
}

#block04 ul li a.arrow02 {
	display: block;
	width: 100%;
	height: 100%;
	position: relative; /* このaタグを基準に矢印を作成 */
	text-decoration: none;
	color: #FFF;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	padding-right: 45px;
}

#block04 ul li a.arrow02:after {
	content: '';
	position: absolute;
	bottom: 0;
	top: 0;
	right: 45px;
	margin: auto 0;
	display: block;
	width: 30px;
	height: 30px;
	border-top: 5px solid #FFF; /* 線の太さ */
	border-right: 5px solid #FFF; /* 線の太さ */
	transform: rotate(45deg);
}


#block04 ul li a.arrow03 {
	display: block;
	width: 100%;
	height: 100%;
	padding: 0.7em 0 0.8em;
	position: relative; /* このaタグを基準に矢印を作成 */
	text-decoration: none;
	color: #FFF;
	line-height: 110%;
}

#block04 ul li a.arrow03:after {
	content: '';
	position: absolute;
	top: 50%;
	right: 10%;
	display: block;
	width: 30px;
	height: 30px;
	margin-top: -15px;
	border-top: 5px solid #FFF; /* 線の太さ */
	border-right: 5px solid #FFF; /* 線の太さ */
	transform: rotate(45deg);
}

#block05 {
margin-bottom: 10%;
}

#block05 .inner {
padding: 6.6%;
background: #FFFFFF;
}

.tbl-01 table {
    width: 100%;
    border: 1px solid #000;
	margin: 6% 0 3%;
}

.tbl-01 table .w1 {
    width: 45%;
}
.tbl-01 table th {
    background-color: #000;
	color: #FFFFFF;
    text-align: center;
	padding: .2em .1em;
    border: 1px solid #000;
}
.tbl-01 table td {
    text-align: center;
	padding: .4em .1em;
    border: 1px solid #000;
}
.tbl-01 table .fw-n {
font-weight: bold;
}

.tbl-01 table .fw-b {
    font-size: 130%;
}
.tbl-01 table .p {
    display: inline-block;
    padding-left: .9em;
}

#block06 {
margin-bottom: 10%;
}

#block06 .inner {
padding: 6.6%;
background: #FFFFFF;
}

#block06 img {
margin: 5% 0;
}

#block07 {
margin-bottom: 10%;
}

#block07 .inner {
padding: 4% 6.6% 6.6%;
background: #FFFFFF;
}

.toggle-wrap {
    /*border-top: 1px solid #000;*/
    margin-bottom: 1em;
}
.toggle-single {
    border-bottom: 1px solid #000;
}
.toggle-single dt {
    cursor: pointer;
    padding: 1em 1.5em 1em 0;
    font-weight: bold;
    font-size: 115%;
    position: relative;
}

.toggle-single dt::after {
    content: '';
    width: .8em;
    height: 3px;
    background-color: #000;
    position: absolute;
    right: .5em;
    top: 49%;
}
.toggle-single dt::before {
    transition: .25s;
    transform: rotate(90deg);
    content: '';
    width: .8em;
    height: 3px;
    background-color: #000;
    position: absolute;
    right: .5em;
    top: 49%;
}
.toggle-single dt.on::before {
    transform: rotate(0deg);
}
.toggle-single dd {
    display: none;
    padding-bottom: 1em;
	font-weight: normal;
	font-size: 90%;
}

.toggle-single a {
	font-weight: bold;
}

#block08 {
margin-bottom: 10%;
}

#block08 .inner {
padding: 6.6%;
background: #FFFFFF;
text-align: center;
}

#block08 img:first-child {
width: 64%;
max-width: 276px;
margin-bottom: 2%;
}

#block08 img:last-child {
width: 30%;
max-width: 130px;
}

h3 {
background: #000000;
color: #FFFFFF;
text-align: center;
padding: 5%;
font-size: 190%;
}

h4 {
margin-bottom: 5%;
background: #e05000;
color: #FFFFFF;
text-align: center;
padding: 4%;
font-size: 140%;
}

h5 {
margin-bottom: 3%;
background: #000000;
color: #FFFFFF;
padding: 3%;
font-size: 110%;
}

h5 span {
float: right;
font-size: 84%;
}

.normal {
font-weight: normal;
}

.mt10 {
margin-top: 3%;
}

.mt20 {
margin-top: 6%;
}

.mt40 {
margin-top: 8%;
}

.center {
text-align: center;
}

.white {
color: #FFFFFF;
}

.fs25 {
font-size: 88%;
line-height: 150%;
}

.fs35 {
font-size: 120%;
}

.list-01 li {
    text-indent: -1em;
    margin-left: 1em;
}

.list-01 li a {
	font-weight: bold;
}

.sp {
    display: none;
}
.pc {
    display: block;
}

.copy {text-align: center; font-weight: normal; font-size: 80%;}

@media (max-width: 750px) {
    .sp {
        display: block;
    }
    .pc {
        display: none;
    }
	
	#block04 ul li {
	height: 90px;
}

#block04 ul li a.arrow01 {
	padding-top: 20px;
}

#block04 ul li a.arrow01:after {
	bottom: 20px;
	width: 15px;
	height: 15px;
	border-top: 4px solid #FFF; /* 線の太さ */
	border-right: 4px solid #FFF; /* 線の太さ */
}

#block04 ul li a.arrow02 {
	padding-right: 25px;
}

#block04 ul li a.arrow02:after {
	right: 25px;
	width: 15px;
	height: 15px;
	border-top: 4px solid #FFF; /* 線の太さ */
	border-right: 4px solid #FFF; /* 線の太さ */
}

}
