@import url('https://fonts.googleapis.com/css2?family=Zen+Old+Mincho&display=swap');

@charset "utf-8";
/* CSS Document */

* {
	margin:0;
	padding:0;
}
body {
	font-size: 14px;
	line-height: 160%;
	color: #222;
	text-align: center;
	margin: 0 auto;
	padding: 0;
}

.exit_top {
	width: 100%;
	margin: 0 auto;
}

.exit_top a{
	display: block;
	text-decoration: none;
	color: #ffffff;
	background: #E4007F;
	padding: 1rem;
	font-size: 1.125rem;
	font-weight: 700;
}

#wrap{
	margin: auto;
}

.top_area{
	position: relative;
	width: 100%;
	min-height: 80vh;
	max-height: 80vh;
	background-image: url(../image/main-bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
    background-position: right 40% top;
}

.top_area::before{
	content: "";
	position: absolute;
	width: 480px;
	height: auto;
	aspect-ratio: 5 / 7;
	background-image: url(../image/main-img.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% auto;
    left: 4.5%;
	bottom: 0;
}

.tx_box{
    position: absolute;
    display: inline-table;
    max-width: 740px;
    width: calc(100% - 2rem);
    right: 0;
	left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}

.tx_box h1 {
	font-family: "Zen Old Mincho", serif;
    font-size: 3.75rem;
	text-align: center;
    line-height: 170%;
    letter-spacing: 4px;
    filter: drop-shadow(0 0 4px #00009970);
    color: #ffffff;
	margin-bottom: 2.5rem;
}

.tx_box p{
	font-size: 18px;
	padding: 1rem;
	word-break: auto-phrase;
	background: #ffffffcc;
}


/*
.btn_top{
	display: inline-block;
  padding: 0.5em 1em;
  text-decoration: none;
  background: #6495ed;
  color: #FFF;
  border-bottom: solid 4px #627295;
  border-radius: 3px;
	margin-bottom:1px;
}

.btn_top:active {
  -webkit-transform: translateY(4px);
  transform: translateY(4px);
  box-shadow: 0px 0px 1px rgba(0, 0, 0, 0.2);
  border-bottom: none;
}
*/


.sp{
	clear :both;
}

p {
	text-align: left;
	line-height: 160%;
    text-align : justify;
    text-justify : distribute ;
}

img{
	border: 0;
	vertical-align: bottom;
}

#head {
	background-image:url(../image/head-bg04-1.png);
	background-position: top center;
	background-repeat: no-repeat;
    background-size: cover;
    padding-bottom: 10rem;
}

#head .img01 {
    padding-top: 7.5rem;
}

#head .point {
	clear: both;
    max-width: 1060px;
	width: calc(100% - 2rem);
    margin: 5rem auto 0;
    padding: 1rem;
    box-sizing: border-box;
    background: #1BBC86;
    border-radius: 1rem;
}

#head .point p{
    text-align: center;
    font-size: 1.125rem;
    font-weight: 700;
    color: #FFFF00;
    margin-bottom: 1rem;
}

#head .point ul {
    display: flex;
    flex-wrap: wrap;
	margin: 0;
	padding:1rem 0;
    width: 100%;
    box-sizing: border-box;
    background: #ffffff;
    border-radius: 0.5rem;
}

#head .point ul li {
	list-style-type: none;
	margin: 0;
	padding: 0.5rem 0;
	width: 20%;
	text-align: center;
	font-size:1rem;
	font-weight: 700;
	display: inline-block;
	*float: left;
	_float: left;
	*width: 225px;
	_width: 225px;
}

#head .point ul li img {
	max-width: 100%;
}

#head .h-tx {
	margin: 32px auto;
	font-size: 16px;
	background-color: #FFF;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	-ms-border-radius: 6px;
	border-radius: 6px;
	padding: 12px 24px;
	width: 56%;
}

#container{
    width: 100%;
    margin: auto;
}

.box-area {
	width: 100%;
}

.box-area.question {
    padding-top: 5rem;
    padding-bottom: 12.25rem;
    margin: auto;
    margin-bottom: -6.25rem;
    background: #DDE2ED;
}

.inner-box-area{
    padding: 10.5rem 2rem 7.5rem;
    box-sizing: border-box;
    background: #DBEEE8;	
}

.box-area.point {
	max-width: 1280px;
    display: flex;
    flex-wrap: wrap;
    margin: auto;
    justify-content: space-between;
}

.img_question {
    max-width: 400px;
    width: 100%;
    margin: auto;
    margin-top: -8.5rem;
    margin-bottom: 2.5rem;
}

.img_question img{
	display: block;
	width: 100%;
}

ul.column3{
    max-width: 960px;
    width: calc(100% - 2rem);
    display: flex;
    margin: auto;
    justify-content: space-between;
	list-style: none;
}

ul.column3 li{
	width: calc(33% - 1rem);
}

ul.column3 li h2{
	font-size: 1.25rem;
	color: #ffffff;
	word-break: auto-phrase;
	padding: 1rem;
	border-radius: 1rem;
	background: #192E7A;
}

.fukidasi_box{
    position: relative;
    max-width: 720px;
    min-height: 180px;
    width: calc(100% - 2rem);
    margin: 0 auto -5rem;
    align-content: center;
    padding: 1.5rem;
    background: #fefecd;
    border-radius: 1rem;
    padding-right: 180px;
    box-sizing: border-box;
    filter: drop-shadow(0 2px 2px #bcbcbc);
}

.fukidasi_box h3{
	text-align: left;
	font-size: 1.75rem;
    line-height: 100%;
	margin-bottom: 1rem;
}

.fukidasi_box h3 br{
	display: none;
}

.fukidasi_box p{
	font-size: 1rem;
	word-break: auto-phrase;
}

.fukidasi_box::before,
.fukidasi_box::after{
	content: "";
	position: absolute;
}

.fukidasi_box::before{
	width: 180px;
	height: 240px;
	background-image: url(../image/box-img.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: center;
	bottom: 0;
	right: 0;
}


.box {
	max-width: 600px;
	width: calc(50% - 4rem);
	display: inline-block;
	*width: 280px;
	_width: 280px;
	*float: left;
	_float: left;
	*margin: 10px 4px;
	_margin: 10px 4px;
	 vertical-align: top;
	 margin-bottom: 1.5rem;
}

.box:nth-of-type(n+3) {
	margin-bottom: 0;
}

.box h2 {
	width: 100%;
	padding: 1.5rem 0px;
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	background-color: #1FA99E;
	color: #F5ED4C;
	margin-bottom: 6px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-ms-border-radius: 5px;
	border-radius: 5px;
}
.box p {
	padding: 4px 8px;
    word-break: auto-phrase;
}
.box02 {
	width: 100%;
	vertical-align: top;
	border: solid 1px #CCCCCC;
}
.box02 h2 {
    margin: 1rem auto;
    width: calc(100% - 2rem);
	padding: 24px 0px;
	text-align: center;
	font-size: 270%;
	font-weight: bold;
	background-color: #FF6633;
	color: #FFF;
}
.box02 h3 {
	margin: 32px auto 0 auto;
	color:#424242;
	font-size: 200%;
	line-height:1.5em;
}
/*
.box02 h3:first-child {
	margin: 0 auto 0 auto;
}*/
.box02 ul {
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    width: calc(100% - 2rem);
	list-style: none;
	text-align: left;
}

.box02 ul:last-of-type{
	margin-bottom: 1rem;
}

.box02 li {
    margin: 0.5rem;
    padding: 1rem;
    width: calc(33.333% - 3rem);
	text-align: left;
	font-size: 100%;
	line-height:1.5em;
	vertical-align: top;
	/*background-image:url("../image/icon01.png");*/
	background-position: top left;
	background-repeat: no-repeat;
	
	background-color: #F1F1F1;
	border-radius: 5px;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
-ms-border-radius: 5px;
-o-border-radius: 5px;
		
	
}
.box02 a,
.box02 li span {
	color:#424242;
	font-size: 130%;
	font-weight: bold;
}
.box02 a:before,
.box02 li span:before {
	padding: 0 5px 0 0;
	content: url(../image/icon01.png);
}
.box02 p {
	margin: 0 auto;
	text-align: center;
}
.box02 li p {
	padding: 5px 0;
	text-align: left;
}

.jisseki_box{
	padding: 7.5rem 2rem;
	background: #FFE5D2;
    margin-bottom: 5rem;
}

.jisseki_box h2{
    max-width: 480px;
    min-height: 120px;
    font-size: 2rem;
    align-content: center;
    background: #FF6633;
    color: #ffffff;
    margin: -10rem auto 5rem;
	border-radius: 1rem;
}

.jisseki_box .area-box{
	max-width: 1280px;
	width: 100%;
	margin: 0 auto 2.5rem;
    padding: 4rem 2.5rem 1.5rem;
    background: #efefef;
	border-radius: 1rem;
	box-sizing: border-box;
}

.jisseki_box .area-box:last-of-type{
	margin-bottom: 0;
}

.jisseki_box .area-box h3{
	position: relative;
	font-size: 1.75rem;
	padding-bottom: 1.5rem;
	margin-bottom: 1.5rem;
}

.jisseki_box .area-box h3::before{
	content: "";
	position: absolute;
	max-width: 120px;
	width: 100%;
	height: 0;
	border-bottom: 1px dashed;
	left:0;
	right: 0;
	bottom: 0;
	margin: auto;
}

.jisseki_box ul{
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: auto;
}

.jisseki_box ul li{
	width: calc((100% / 3) - 1rem);
	margin: 0 0 2.5rem;
	filter: drop-shadow(0 0 2px #00000066);
}

.jisseki_box ul li a{
	display: block;
	text-decoration: none;
	color: #000000;
	transition: .3s;
}

.jisseki_box ul li a:hover,
.jisseki_box ul li a:focus{
	filter: brightness(70%);
}

.jisseki_box ul li a .tx_area{
	width: 100%;
	display: flex;
	min-height: 60px;
	background: #ffffff;
	border-bottom-left-radius: 1rem;
}

.jisseki_box ul li a .img_area{
	display: block;
	overflow: hidden;
	border-top-left-radius: 1rem;
	border-top-right-radius: 1rem;
}

.jisseki_box ul li a .tx_area span{
	display: block;
	align-content: center;
	font-size: 1.125rem;
	box-sizing: border-box;
}

.jisseki_box ul li a .tx_area span.corp{
	width: 65%;
	padding: 1rem;
}

.jisseki_box ul li a .tx_area span.btn_more{
	width: 35%;
	text-align: center;
	background: #FF6633;
	color: #ffffff;
	font-weight: 700;
}

.contact_box{
    max-width: 960px;
    width: 100%;
    margin: auto;
	margin-bottom: 3.75rem;
}

.etc {
	height: 80px;
	background-image:url(../image/img01.jpg);
	background-position: left;
	background-repeat: no-repeat;
	padding-left:110px;
	margin: 14px 40px;
	text-align: left;
}
.etc02 {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto 2rem;
}

.etc02 span img{
	max-width: 400px;
	width: 100%;
	height: auto;
}
.etc p,etc02 p {
	padding-top: 14px;
	font-size: 16px;
}
.etc02 p {
	font-size: 16px;
}
.etc02 p img {
	margin: 12px 0px;
}
.img-left {
	float: left;
	padding-right: 14px;
}
.img-c {
    width: calc(100% - 2rem);
	display: block;
	text-align: center;
	margin: 1.5rem auto;
}
.foot {
	text-align: center;
	font-size: 1.25rem;
	margin-bottom: 5rem;
}

.foot a{
	display: block;
	max-width: 360px;
	width: 100%;
	margin: auto;
	padding: 1rem;
	min-height: 5rem;
	align-content: center;
	text-decoration: none;
	color: #ffffff;
	font-weight: 700;
	background: #E4007F;
	border-radius: 1rem;
	box-sizing: border-box;
}

.info {
	font-size: 16px;
	color: #000;
	letter-spacing: 0.08em;
}

@media screen and (max-width:1280px){
	.top_area::before{
		display: none;
	}
}



@media screen and (max-width:1160px){
	.jisseki_box ul li{
		width: calc((100% / 2) - 1rem);
	}
}

@media screen and (max-width:900px){
	img{
		display: inline;
		max-width: 100%;
		height: auto;
		width /***/:auto;
	}
	#head .img01 {
		width: 100%;
	}
	#head .img01 img {
		max-width: 100%;
	}
	#wrap {
		width: 100%;
	}
	#head .h-tx {
		width: 96%;
		padding: 0;
	}
	h1 {
		margin: 0px 4px;
}
	.box {
        max-width: none;
        width: 100%;
        margin: 0 auto 2rem;
	}
	
	.box:nth-of-type(n+3) {
    	margin-bottom: 1.5rem;
	}
	.foot a{
		min-height: 60px;
	}
	
	.jisseki_box .area-box {
	    padding: 4rem 1.5rem 1.5rem;
	}
	
	.box02 ul {
		width: 98%;
	}
	.box02 li {
		margin: 13px auto;
		max-width: inherit;
		width: 92%;
		display: block;
	}
	
	ul.column3{
        max-width: 320px;
		flex-direction: column;
	}
	
	ul.column3 li{
		width: 100%;
		margin-bottom: 2rem;
	}
	
	ul.column3 li:last-child{
		margin-bottom: 0;
	}
	
	.etc02 {
    	flex-direction: column-reverse;
	}
	
	.etc02 p{
		margin-bottom: 1rem;
	}
}

@media screen and (max-width:768px){
	.jisseki_box{
		padding-bottom: 5rem;
		margin-bottom: 3rem;
	}
	
    .jisseki_box ul li {
        width: 100%;
    }
	
	.jisseki_box ul li a {
    	display: flex;
	}
	
	.jisseki_box ul li a .img_area{
		width:50%;
	    border-top-right-radius: 0;
		border-bottom-left-radius: 1rem;
	}

	.jisseki_box ul li a .tx_area {
		width:50%;
		flex-direction: column;
		border-radius: 0 1rem 1rem 0;
	}
	
	.jisseki_box ul li a .tx_area span.corp{
		width: 100%;
		margin: auto;
	}
	
	.jisseki_box ul li a .tx_area span.btn_more {
		max-width: 160px;
		width: 100%;
		min-height: 40px;
		text-align: center;
		margin-top: auto;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 2rem;
		border-radius: 1rem;
	}
}

@media screen and (max-width:640px){
	
	.top_area {
	    min-height: 60vh;
	}
	
	.tx_box h1{
		font-size: 2.5rem;
	}
	
	.img-left {
		float: none;
	}
	.i-left {
		display: block;
		text-align: center;
	}
	.etc02 {
        width: calc(100% - 2rem);
		text-align: center;	
	}
	.etc02 p {
		text-align: left;
	}
	
	#head .point ul li {
	    width: 33.333%;
	}
	
	.box-area.question{
    	padding-bottom: 17rem;
	}
	
	.fukidasi_box{
		padding-right: 1.5rem;
	}
	
	.fukidasi_box h3 {
    	text-align: center;
	}
	
	.fukidasi_box h3 br{
		display: inline;
	}
	
	.fukidasi_box::before {
	    width: 120px;
    	height: 160px;
		bottom: auto;
		top: -8.5rem;
		left: 0;
		margin: auto;
	}

}

@media screen and (max-width:560px){
	.jisseki_box ul {
    	max-width: 400px;
	}
	
    .jisseki_box ul li {
        width: 100%;
    }
	
	.jisseki_box ul li a {
    	display: block;
	}
	
	.jisseki_box ul li a .img_area{
		width:100%;
	    border-radius: 1rem 1rem 0 0;
	}

	.jisseki_box ul li a .tx_area {
		width:100%;
		min-height:40px;
		flex-direction: row;
		border-radius: 0rem 0rem 0 1rem;
	}
	
	.jisseki_box ul li a .tx_area span.corp{
		width: 65%;
		font-size: 1rem;
		margin: auto;
    	padding: 0.5rem;
	}
	
	.jisseki_box ul li a .tx_area span.btn_more {
		max-width: none;
		width: 35%;
		min-height: auto;
		text-align: center;
		margin: 0;
		border-radius: 0;
	}
}

@media screen and (max-width:480px){
	#head .point ul li {
	    width: 50%;
	}
	
	.img_question {
    	max-width: 280px;
	}
}