*{
    padding:0;
    margin:0;
    font-family: sans-serif;
}

main{
    color:#313231;
}

.pc{
    display:block;
}

.sp{
    display:none;
}

/*
header{
    display:flex;
    justify-content: space-between;
    align-items: flex-start;
    padding:1vw;
}

.logo{
    width:25%;
}

.flex-right{
    display:flex;
    justify-content: flex-end;
}

.blue-box{
    background-color:#2653b9;
    height:6.5vw;
    padding:1vw;
    box-sizing: border-box;
    vertical-align: top;
    margin:0 1vw;
}

header p{
    color:white;
    display:inline-block;
    font-size:2vw;
    font-weight:bold;
    line-height:2vw;
    text-align:center;
}

.head-p-small{
    font-size:1.6vw;
}

.mail{
    width:4vw;
}

.tel{
    width:3vw;
    vertical-align:middle;
}

.tel1{
    line-height:5vw;
}
*/

.header-img{
    width:100%;
}

.container{
    max-width:800px;
    margin:0 auto;
}

.section1{
    padding:4vw 0;
    position:relative;
}

.section1:after,.section3:after{
    content: "";
    position: absolute;
    right: 0;
    bottom: -6vw;
    left: 0;
    width: 0px;
    height: 0px;
    margin: auto;
    border-style: solid;
    border-color: white transparent transparent transparent;
    border-width: 6vw 14vw 0 14vw;
    z-index: 10;
  }

.section1 img,.section5 img{
    width:100%;
}

.section2,.section4{
    background-color:#f0f0f0;
    padding:11vw 0 5vw;
    position:relative;
}

.section2:after,.section4:after{
    content: "";
    position: absolute;
    right: 0;
    bottom: -6vw;
    left: 0;
    width: 0px;
    height: 0px;
    margin: auto;
    border-style: solid;
    border-color: #f0f0f0 transparent transparent transparent;
    border-width: 6vw 14vw 0 14vw;
    z-index: 10;
  }

.img2-1{
    position:absolute;
    width:50%;
    left:0;
    top:18vw;
}

h2{
    background-color:#193c6b;
    color:white;
    display:inline-block;
    padding:2vw 12vw;
    font-size:4.8vw;
    width:60%;
    box-sizing: border-box;
}

.right{
    text-align:right;
}

.img2-2{
    width:40%;
    padding:7vw 7vw 4vw 0;
}

.back-white{
    background-color:white;
    display:inline-block;
    width:85%;
    padding:6vw 0 4vw 12vw;
    box-sizing: border-box;
    margin-bottom:6vw;
}

p{
    font-size:2.7vw;
    line-height:5vw;
}

.red{
    color:red;
}

.back-b{
    background-color:#193c6b;
    color:white;
    font-size:3vw;
    display:inline-block;
    padding:0.5vw 10vw;
    margin-bottom:2vw;
}

th:nth-child(2),th:nth-child(3){
    background-color:#b2b2b2;
    font-size:2.5vw;
    font-weight: normal;
    letter-spacing: 0.5vw;
}

th:nth-child(4){
    background-color: #f8b62d;
    font-size:2.8vw;
    font-weight: bold;
}

td:nth-child(1){
    color:white;
    background-color:#313231;
    font-size:2.5vw;
}

td:nth-child(2),td:nth-child(3){
    background-color:white;
    font-size:2.5vw;
}

td:nth-child(4){
    background-color:#fcf3cd;
    font-size:2.8vw;
    font-weight: bold;
}

.center{
    text-align:center;
}

table{
    border:0px none;
    margin:0 auto;
    width:60%;
    margin-bottom:4vw;
}

.bold{
    font-weight:bold;
}

.p-big{
    display:inline-block;
    font-size:5vw;
    padding:2vw 2vw 0 10vw;
    line-height:7vw;
}

.img2-3{
    width:20%;
    padding-top:5vw;
    vertical-align: top;
}

.section3{
    padding:11vw 0 5vw;
    position:relative;
}

.img3-1{
    position:absolute;
    width:50%;
    right:0;
    top:18vw;
}

.img3-2{
    width:40%;
    padding:7vw 0 4vw 7vw;
}

.back-gray{
    background-color:#f0f0f0;
    padding:6vw 0 4vw 8vw;
    box-sizing: border-box;
    margin-bottom:6vw;
    width:85%;
    margin-left: auto;
    margin-right: 0px;
}

.p-big1{
    font-size:5vw;
    line-height:7vw;
}

.section4 h2{
    text-align:left;
}

.section5{
    padding:10vw 0 5vw;
    position:relative;
}

h3{
    background-color:#2051a3;
    color:white;
    padding:2vw 0;
    font-size:4.0vw;
    text-align:center;
    margin-bottom:10vw;
    position:relative;
}

h3:after{
    content: "";
    position: absolute;
    right: 0;
    bottom: -6vw;
    left: 0;
    width: 0px;
    height: 0px;
    margin: auto;
    border-style: solid;
    border-color: #2051a3 transparent transparent transparent;
    border-width: 6vw 14vw 0 14vw;
    z-index: 10;
  }

.container1{
    margin:0 auto;
    max-width:1080px;
}

.gray-box{
    background-color: #eff1f2;
    padding:2vw 3vw;
    box-sizing: border-box;
    margin-bottom:3vw;
}

.gray-box p{
    display:inline-block;
    vertical-align: middle;
}

.gray-box p:first-child{
    background-color:#2051a3;
    color:white;
    font-size:4.0vw;
    font-family:serif;
    padding:0.5vw 1.4vw;
    margin-right:2vw;
    margin-bottom:2vw;
}

.gray-box p:nth-child(2){
    font-size:2.0vw;
    line-height:5vw;
    width:86%;
    margin-bottom:2vw;
    font-weight: bold;
}

.gray-box p:nth-child(3){
    background-color:#cc1421;
    color:white;
    font-size:4.0vw;
    font-family:serif;
    padding:0.5vw 1.5vw;
    margin-right:2vw;
}

.gray-box p:nth-child(4){
    font-size:1.6vw;
    line-height:2.2vw;
    width:86%;
}

.section6 img{
    width:38%;
    padding:4vw 1vw;
}

.section7{
    margin-bottom:8vw;
}

.section7 img{
    width:100%;
    margin-bottom:2vw;
}

.flex{
    display:flex;
    align-items: flex-start;
}

.flex p:nth-child(1),.flex p:nth-child(3),.flex p:nth-child(5){
    font-size:7vw;
    font-family: serif;
    padding-right:1.5vw;
}

.flex p:nth-child(2n){
    font-size:1.5vw;
    line-height:2vw;
    width:30%;
}

.flex1{
    display:flex;
    justify-content: space-between;
    flex-wrap:wrap;
}

.m-b1{
    margin-bottom:3vw;
}

.m-b2{
    margin-bottom:1.5vw;
}

input{
    width:60%;
    height:1.2vw;
    font-size:1.3vw;
    padding:0.5vw;
    border:2px solid gray;
}

label{
    font-size:1.8vw;
    font-weight: bold;
}

label span{
    font-size:1.3vw;
    background-color:#cc1421;
    color:white;
    padding:0.2vw 0.5vw;
    margin-left:0.5vw;
    border-radius: 5px;
}

.flex1 label:nth-child(1){
    width:20%;
}

.flex1 label:nth-child(2){
    color:gray;
}

/*
button{
    width:60%;
    text-align:center;
    margin:6vw 0;
    background-color:#cc1421;
    color:white;
    font-size:4.0vw;
    padding:4vw 0;
    border:transparent;
    border-radius: 2vw;
    font-weight: bold;
    letter-spacing: 1.5vw;
}

.tel2{
    background-color: #5183c3;
    text-align:center;
    padding:2vw 0;
    border-radius: 2vw;
    margin-bottom:8vw;
}


.section8 img{
    width:10%;
    padding-right:0.5vw;
}

.tel2 p{
    display:inline-block;
    font-weight: bold;
    color:white;
    line-height:4vw;
}

.container2{
    margin:0 auto;
    width:60%;
}

.container2 span{
    font-size:4vw;
}
*/

footer{
    background-color: #193c6b;
    color:white;
    text-align: center;
    padding:1.5vw 0;
}

footer p{
    font-size:1.8vw;
}

.effect-fade {
    opacity: 0;
    transform: translate(0, 100px); /* フェードインで動く高さを指定 */
    transition: all 2000ms; /* フェードインにかかる時間を指定 */
  }
  .effect-scroll {
    opacity: 1;
    transform: translate(0, 0);
  }

@media screen and (max-width:786px){
    .section1{
        padding:4vw 1vw;
    }

    .section5{
        padding: 10vw 1vw 5vw 1vw;
    }

    .container1{
        padding:0 2vw;
    }
}

@media screen and (max-width:480px) {
    .pc{
        display:none;
    }

    .sp{
        display:block;
    }

    header p{
        line-height: 2.5vw;
    }

    table{
        width: 80%;
    }

    .gray-box p:nth-child(4) {
        line-height: 3vw;
    }

    .flex p:nth-child(2n) {
        line-height: 3vw;
    }

    .flex p:nth-child(1), .flex p:nth-child(3), .flex p:nth-child(5) {
        font-size: 5vw;
    }

    h3:after {
        bottom: -5.5vw;
    }

    .section1:after,.section3:after{
        bottom: -5.5vw;
    }

    .section2:after,.section4:after{
        bottom: -5.5vw;
    }
}






.section9{
	margin-top: 5em;
}
.section9 table{
	width: 100%;
	border-collapse: collapse;
}
.section9 tr,
.section9 th,
.section9 td{
	font-size: 100%;
	border: 1px solid #333;
}
.section9 th{
	background: #f2c879;
}
.section9 th,
.section9 td{
	padding: .5em;
}
.section9 p{
	font-size: 100%;
	line-height: 130%;
}


header{
	display: flex;
	justify-content: space-between;
	padding: 1vw;
	background: #fff;
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	z-index: 999999;
	box-shadow: 0 .0 .1rem #666;
}
header .logo{
	display: flex;
	align-items: center;
	width: 25%;
}
header .logo img{
	display: block;
	width: 100%;
}
header .header-items-wrap{
	display: flex;
	justify-content: flex-end;
	align-items: flex-start;
}
header .header-item{
	box-sizing: border-box;
	padding: 1.5vw 1vw;
	margin: 0 .2rem;
	text-decoration: none;
	color: #fff;
	background: #2653b9;
	font-weight: bold;
	font-size: 2vw;
	border-radius: 6px;
	box-shadow: 1px 2px 0 #888;
}
header .header-item .icon{
	height: 2.6vw;
	width: auto;
	vertical-align: middle;
}
header .header-item .text{
	display: inline-block;
}
header .header-item .text-sub{
	margin-left: .1em;
	font-size: .7em;
}
header .header-item.mail{
	background: #cc1421;
}
header .header-item.tel{
	background: #5183c3
}
header .header-item.line{
	background: #07b53b;;
}

.action-button{
	box-sizing: border-box;
	display: block;
	width: 60%;
	padding: 4vw 0;
	margin: 6vw auto;
	color: #fff;
	font-size: 4vw;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	background: #cc1421;
	border: none;
	border-radius: 2vw;
}
.action-button.contact-from__submit-button{
	letter-spacing: 2vw;
}
.action-button.tel,
.action-button.line{
	font-size: 2.7vw;
	line-height: 140%;
}
.action-button.tel{
	background: #5183c3;
}
.action-button.line{
	background: #07b53b;
}
.action-button img{
	display: inline-block;
	height: 2.4em;
	width: auto;
	padding-right: .5vw;
}
.action-button .text{
	display: inline-block;
	margin: 0;
	padding: 0;
}
.action-button .text .text-sub{
	display: block;
}

.section-other-action-title{
	text-align: center;
	font-size: 3vw;
}
.section-other-action-title::before,
.section-other-action-title::after{
	content: "▼▼";
}

@media screen and (max-width:480px){
	header{
		padding: 2vw 1vw;
	}
	header .header-item{
		padding: 3vw 1vw;
		font-size: 3.9vw;
	}
	header .header-item .icon{
		display: none;
	}
	header .header-item .small{
		font-size: .8em;
	}

	.action-button{
		width: 80%;
		font-size: 5vw;
	}
	.action-button.tel,
	.action-button.line{
		font-size: 4vw;
	}

	.section-other-action-title{
		font-size: 4vw;
	}
}

