@charset "UTF-8";

body{	
	background-image:none;
}

section .inner h1,
section .inner  h2,
section .inner  h3,
section .inner  h3::after,
section .inner  h5,
section .inner  h4{
	background: none;
	border: none;
	box-shadow: none;
	padding: 0;
	margin: 0;
}

p {
	padding: 0;
	margin: 0;
}

body{font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;margin:0; padding: 0; font-size: 16px; color: #333;    line-height: 2;}
ul{margin:0; padding: 0;}
li{list-style-type: none;}

#contents{
	width:100%;
	margin:0 auto;
	text-align:left;
	min-height:inherit;
	padding-bottom: 0;
	min-width: unset;
	color:#000;
	background: #4D506B;
}

#contents section {
	font-family: "Noto Serif JP", serif;
}

.breadcrum-list li,.breadcrum-list li a {
	color:#fff;
}

#contents h2 {
    color: #000;
    text-align: center;
	padding: 0;
	margin-bottom: 80px;
}

.flexBox {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center;
}

.center {
	text-align: center;
}

section img {
	width: auto;
	max-width: 100%;
}

.bgWhite {
	background: #fff;
}

.textGold {
	color:#B79C47;
}

.size12 {
	font-size: 12px;
}

.size14 {
	font-size: 14px;
}

.size16 {
	font-size: clamp(14px, 1.6vw, 16px);
}

.size20 {
	font-size: clamp(16px, 2vw, 20px);
}

.size23 {
	font-size: clamp(18px, 2.3vw, 23px);
}

.size25 {
	font-size: clamp(18px, 2.4vw, 25px);
}

.size26 {
	font-size: clamp(18px, 2.6vw, 26px);
}

.size29 {
	font-size: clamp(22px, 2.9vw, 29px);
}

.size30 {
	font-size: clamp(22px, 3vw, 30px);
}

.size35 {
	font-size: clamp(24px, 3.5vw, 35px);
}



/*＝＝＝＝＝＝＝＝
#sec01
＝＝＝＝＝＝＝＝＝*/

#sec01 {
	background: #4D506B;
	padding: 130px 0 90px;
	color:#fff;
}

#sec01 .box01 {
	align-items: flex-start;
}

#sec01 .box01 .leftArea {
	width: 50%;
	max-width: 600px;
	margin-top: 45px;
}

#sec01 .box01 .leftArea img {
	margin-bottom: 40px;
}

#sec01 .box01 .leftArea .text {
    line-height: 1.8;
    letter-spacing: 2px;
	font-weight: 600;
}

#sec01 .box01 .rightArea {
	width: 46%;
	max-width: 502px;
}

#sec01 .box02 {
	margin-top: -45px;
	margin-bottom: 125px;
}

#sec01 .box02 .leftPhoto {
	width: 37.6%;
	max-width: 452px;
}

#sec01 .box02 .centerPhoto {
	width: 28.6%;
	max-width: 343px;
	margin-top: 90px;
}

#sec01 .box02 .rightPhoto {
	width: 25.4%;
	max-width: 305px;
	margin-top: 90px;
}

#sec01 .box03 {
	align-items: stretch;
}

#sec01 .box03 .bgWhite {
	width: 70%;
	max-width: 840px;
	color: #000;
	padding: 60px 50px 80px;
	box-sizing: border-box;
	position: relative;
}

#sec01 .box03 .bgWhite .text {
	line-height: 2;
}

#sec01 .box03 .bgWhite .signImage {
	position: absolute;
	width: 215px;
	bottom:40px;
	right: 50px;
}

#sec01 .box03 h3 {
    font-weight: 800;
    letter-spacing: 3px;
	margin-bottom: 40px;
	height: auto;
}

#sec01 .box03 .bgBeige {
	width: 25%;
	max-width: 300px;
	background: #ECECE5;
	padding: 60px 45px 70px;
	box-sizing: border-box;
	color: #000;
}

#sec01 .box03 .bgBeige .qrImage {
    background: #fff;
    margin-bottom: 30px;
}

#sec01 .box03 .bgBeige a  {
    word-break: break-all;
	color:#000;
}


/*＝＝＝＝＝＝＝＝
#sec02
＝＝＝＝＝＝＝＝＝*/

#sec02 {
	background: #ECECE5;
	padding-bottom: 50px;
}

#sec02 .bg{
	background: url("../image/sec01_bg.png") no-repeat 50% 0;
	background-size: contain;
	aspect-ratio: 3200 / 148;
	width: 100%;
	margin-bottom: 120px;
}

#sec02 h2 {
	margin-bottom: 60px;
}

#sec02 .bgWhite {
	border:1px solid #1F2674;
	box-sizing: border-box;
	padding: 50px 50px 40px;
	margin-bottom: 50px;
}

#sec02 .bgWhite .question {
    position: relative;
    padding-left: 45px;
    color: #1F2674;
    font-weight: 800;
    font-size: clamp(16px, 2vw, 20px);
    margin-bottom: 30px;
    letter-spacing: 1px;
}

#sec02 .bgWhite .question:before {
	content:"Q";
	position: absolute;
	top:40%;
	left: 0;
	transform: translateY(-50%);
	color:#1F2674;
	font-weight: 800;
	font-size: clamp(22px, 3.8vw, 38px);
}

#sec02 .bgWhite .answer {
	position: relative;
	padding-left: 45px;
	font-size: clamp(14px, 1.8vw, 18px);
	letter-spacing: 1px;
}

#sec02 .bgWhite .answer:before {
    content: "A";
    position: absolute;
    top: -3px;
    left: 0;
    font-weight: 800;
    font-size: clamp(20px, 3.2vw, 32px);
}

/*＝＝＝＝＝＝＝＝
#sec03
＝＝＝＝＝＝＝＝＝*/

#sec03 {
	background: #CBCBC0;
	padding-bottom: 160px;
}

#sec03 .bg{
	background: url("../image/sec03_bg.png") no-repeat 50% 0;
	background-size: contain;
	aspect-ratio: 3200 / 148;
	width: 100%;
	margin-bottom: 120px;
}

#contents #sec03 h2 {
    margin-bottom: 75px;
}

#sec03 .flexBox {
	border:1px solid #1F2674;
	padding: 50px;
	box-sizing: border-box;
}

#sec03 .flexBox .leftArea {
	width: 40%;
	
}

/*#sec03 .flexBox .leftArea {
	width: 37%;
	max-width: 448px;
}

#sec03 .flexBox .leftArea h4 {
	color: #1F2674;
	position: relative;
	padding-left: 40px;
}

#sec03 .flexBox .leftArea h4:before {
	content:"";
	position: absolute;
	width: 33px;
	height: 2px;
	background: #1F2674;
	top:50%;
	left: 0;
	transform: translateY(-50%);
}*/

#sec03 .flexBox .rightArea {
	width: 56%;
	max-width: 700px;
}

#sec03 .flexBox .rightArea h3 {
	margin-bottom: 20px;
	height: auto;
	letter-spacing: 2px;
}

#sec03 .flexBox .rightArea .text {
	color:#000;
	line-height: 1.8;
}


@media screen and  (min-width: 320px) and (max-width: 768px) {
	
	section .inner {
			width:92%;
			margin: 0 auto;
			min-width: 92%;
		}
	
	#sec01 {
		padding: 20px 0 60px;
	}	
	
	#sec01 .box01 .leftArea {
		width: 94%;
		margin: 0 auto 40px;;
	}	
	
	#sec01 .box01 .leftArea .text {
		letter-spacing: 1px;
	}
	
	#sec01 .box01 .rightArea {
		width: 80%;
		margin: 0 auto 40px;
	}	

	#sec01 .box02 {
		width: 100%;
		margin-left: 0;
		margin-top: 0;
		margin-bottom: 40px;
		align-items: flex-start;
	}	
	
	#sec01 .box02 .leftPhoto {
		width: 60.5%;
		max-width: unset;
	}
	
	#sec01 .box02 .rightPhoto {
		width: 34.8%;
		max-width: unset;
		margin-top: 0;
	}	
	
	#sec01 .box02 .rightPhoto img {
		margin-bottom: 20px;
	}	
	
	#sec01 .box03 .bgWhite {
		width: 100%;
		padding: 30px 25px 40px;
		position: unset;
		margin-bottom: 40px;
	}

	#sec01 .box03 h3 {
		letter-spacing: 0.5px;
		margin-bottom: 20px;
	}	
	
	#sec01 .box03 .bgWhite .signImage {
		position: unset;
		width: 50%;
		margin: 20px 0 0 auto;
	}

	#sec01 .box03 .bgBeige {
		width: 100%;
		max-width: unset;
		padding: 30px 25px 40px;
	}
	
	#sec01 .box03 .bgBeige .qrImage {
		text-align: center;
		width: 60%;
		margin: 0 auto 20px;
	}
	
	#sec02 {
		padding-bottom: 25px;
	}
	
	#sec02 .bg {
		margin-bottom: 50px;
	}	
	
	#sec02 h2 {
		width: 50%;
		margin: 0 auto 40px;
	}	
	
	#sec02 .bgWhite {
		padding: 25px 25px 25px;
		margin-bottom: 30px;
	}

	#sec02 .bgWhite .question {
		margin-bottom: 20px;
		padding-left: 30px;
	}	
	
	#sec02 .bgWhite .answer {
		padding-left: 30px;
	}	
	
	#sec02 .bgWhite .answer:before {
		font-size: 22px;
	}	
	
	#sec03 {
		padding-bottom: 80px;
	}
	
	#sec03 .bg {
		margin-bottom: 50px;
	}	
	
	#contents #sec03 h2 {
		width: 50%;
		margin: 0 auto 40px;
	}	
	
	#sec03 .flexBox {
		padding: 35px;
	}
	
	#sec03 .flexBox .leftArea {
		width: 100%;
		max-width: unset;
		margin-bottom: 20px;
	}	

	#sec03 .flexBox .rightArea {
		width: 100%;
		padding: 0;
		margin-top: 0;
	}
	
	#sec03 .flexBox .rightArea h3 {
		letter-spacing: 1px;
	}
	
	
	#sec03 .flexBox .rightArea .photo {
		margin-bottom: 20px;
	}	
	
	
	
	
	
	
}



@media screen and (min-width: 769px) and (max-width: 1024px)  {
		
	.sp{
		display: none;
	}
	
	.sp.tb {
		display: none;
	}
	
	section .inner {
		width:92%;
		margin: 0 auto;
		min-width: 92%;
	}
	
	#sec01 {
		padding: 50px 0 90px;
	}
	
	#sec01 .box01 {
		margin-bottom: 20px;
	}	
	
	#sec01 .box02 {
		margin: 0 auto 60px;
	}
	
	#sec01 .box03 .bgWhite {
		padding: 40px 30px 150px;
	}	

	#sec01 .box03 .bgBeige {
		padding: 40px 30px 150px;
	}	
	
	#sec02 {
		padding-bottom: 30px;
	}	

	#sec02 .bg {
		margin-bottom: 60px;
	}
	
	#sec02 h2 {
		width: 40%;
		margin: 0 auto 50px;
	}	

	#sec02 .bgWhite {
		padding: 30px 30px 30px;
		margin-bottom: 30px;
	}	
	
	#sec03 {
		padding-bottom: 100px;
	}	

	#sec03 .bg {
		margin-bottom: 60px;
	}
	
	#contents #sec03 h2 {
		width: 40%;
		margin: 0 auto 50px;
	}	
	
	#sec03 .flexBox .leftArea {
		width: 60%;
		margin: 0 auto 30px;
	}	
	
	#sec03 .flexBox .rightArea {
		width: 100%;
	}	
	
	
	
	
		
	
}


@media screen and (min-width: 1025px) and (max-width: 1130px)  {
		
	
	
	.sp.tb {
		display: block;
	}

	
	
	
}





#pageTop {
    display: none;
    position: fixed;
    bottom: 35px;
    right: 20px;
    text-decoration: none;
    z-index: 1000;
    text-align: center;
    padding: 12px;
    background: #B79C47;
    font-weight: bold;
    font-size: 90%;
    width: 30px;
    height: 30px;
    border-radius: 50px;
}

#pageTop a:hover {
	text-decoration: none;
}

#pageTop a img {
	width: 100%;
}

@media screen and (max-width: 768px) {
	#pageTop {
		bottom: 10px;
		right: 10px;
		padding: 10px;
		font-size: 70%;
		width: 25px;
    	height: 25px;
	}
}
