@charset "UTF-8";
/* ----------------------------------------------------------------------------- */
body {
  margin: 0px;
  padding: 0px;
  font-family: "Meiryo", "メイリオ", "ヒラギノ角ゴ Pro W3", Verdana, "ＭＳ Ｐゴシック", Arial, Osaka, sans-serif;
  /*	font-family: "ヒラギノ角ゴ Pro W3", Osaka, "ＭＳ Ｐゴシック", serif;*/
  /*	line-height:1.5em;*/
  background-color: #fff; }

#breadcrumb {
  margin: 0 auto;
  width: 950px;
  padding: 13px 12px 13px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  font-family: "Meiryo", "メイリオ", "ヒラギノ角ゴ Pro W3", Verdana, "ＭＳ Ｐゴシック", Arial, Osaka, sans-serif; }

#breadcrumb a {
  color: #0000ee; }

/* header ----------------------------------------------------------------------------- */
#header {
  width: 100%;
  margin: 0 auto;
  border-bottom: #d2ea56 double 3px;
  background-color: white;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-family: "Meiryo", "メイリオ", "ヒラギノ角ゴ Pro W3", Verdana, "ＭＳ Ｐゴシック", Arial, Osaka, sans-serif; }

#header .inner {
  width: 950px;
  margin: 0 auto; }

#header:after {
  content: '';
  display: block;
  clear: both; }

#header_logo {
  padding: 0px;
  float: left;
  height: 44px;
  width: 205px;
  margin: 0; }

#header_logo > a {
  display: block; }

.header_navi {
  float: right;
  margin-right: 2em; }

/* 検索ここから★★★★★★★★★★★★★★★★★★★★-------------------- */
input {
  background: none;
  vertical-align: middle; }

#detail_search {
  float: left;
  width: 228px;
  margin: 3px 6px 0 0; }

#detail_search form {
  background: url(../../image/input.png) no-repeat top left;
  /*階層を合わせる★★★★★★★★*/
  margin: 0;
  padding: 0 0 0 10px; }

#detail_search form input {
  border: none; }

span input .bt {
  width: 33px;
  margin: 0 0 0 0; }

span input .word {
  width: 184px;
  margin: 10px 3px 0 0; }

input {
  background: none;
  vertical-align: middle; }

input a:focus {
  border: none; }

#detail_search {
  float: left;
  width: 228px;
  margin: 3px 6px 0 0;
  position: relative; }

#detail_search form {
  background: url(../../image/input.png) no-repeat top left;
  /*階層を合わせる★★★★★★★★*/
  margin: 0;
  padding: 0 0 0 10px; }

#detail_search form input {
  border: none; }

input .btn {
  margin: 0;
  z-index: 10; }

input .word {
  width: 184px;
  margin: 0px 3px 0 0; }

#detail_search input[type="text"], input[type="password"], textarea, select {
  outline: none;
  margin-top: 2px;
  margin-right: 7px;
  width: 170px; }

@-moz-document url-prefix() {
  input .word {
    width: 170px;
    margin: 0px 3px 0 0; } }

/* 検索ここまで★★★★★★★★★★★★★★★★★★ -------------------- */
#header_sitemap {
  padding: 0px;
  float: left;
  height: 12px;
  width: 110px;
  margin-top: 5px;
  margin-right: 12px;
  margin-bottom: 8px;
  margin-left: 10px;
  font-size: 0.6875em; }

#header_sitemap > ul {
  list-style: none;
  margin: 0;
  padding: 0; }

#header_sitemap > ul > li {
  background: url(../../image/arrow.jpg) no-repeat left center;
  padding-left: 1.5em;
  line-height: normal; }

#header_sitemap > ul > li > a {
  color: #666; }

#header_fontsize {
  float: left;
  height: 22px;
  margin-top: 4px;
  margin-bottom: 4px;
  margin-left: 0px;
  padding-top: 7px;
  padding-bottom: 7px;
  font-size: 0.6875em;
  font-weight: bold;
  color: #666; }

#header_fontsize > span {
  display: inline-block;
  vertical-align: 40%; }

#header_fontsize ul {
  display: inline-block;
  margin: 0px;
  padding: 0px;
  list-style-type: none;
  width: auto; }

#header_fontsize li {
  margin: 0px;
  padding: 0px;
  list-style-type: none;
  float: left;
  height: 21px;
  width: 21px; }

#footer {
  width: 100%;
  background-color: #d1e852;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 10px 20px 0;
  font-family: "Meiryo", "メイリオ", "ヒラギノ角ゴ Pro W3", Verdana, "ＭＳ Ｐゴシック", Arial, Osaka, sans-serif;
  font-size: 0.8125em; }

#footer .inner {
  margin: 0 auto;
  width: 950px; }

#footer .inner > ul {
  margin: 0 0 10px;
  padding: 0;
  list-style: none; }

#footer .inner > ul:after {
  content: '';
  display: block;
  clear: both; }

#footer .inner > ul > li {
  float: left;
  margin-right: 1.5em; }

#footer .inner > ul > li > a {
  color: #333;
  font-size: .925em; }

address {
  line-height: 1; }



/*-----------------------------------------------

共通

-----------------------------------------------*/

.inner01 {
	width: 1150px;
	margin: 0 auto;
	position: relative;
}

.pcview {}

.spview {
	display: none;
}

.alC {
	text-align: center;
}

.alR {
	text-align: right;
}

.notes {
	font-size: 125%;
}


.contentContainer {
	background: url("/images/bg01_3.jpg") repeat-y;
	background-size: 100% auto;
	font-feature-settings: 'palt';
	padding-bottom: 115px;
}


/*-----------------------------------------------

mainvisual

-----------------------------------------------*/

#mainvisual {
	padding: 35px 0 30px;
}

#mainvisual h2 {
	text-align: center;
}

#mainvisual h2 img {
	max-width: 100%;
}


/*-----------------------------------------------

sec01

-----------------------------------------------*/

#sec01 {
}

#sec01 .inner01 {
	padding: 60px 75px;
	box-sizing: border-box;
	background: #fff;
}

#sec01 .box01 {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: -45px 0 20px;
}

#sec01 .box01 p {
	font-size: 125%;
	line-height: 1.8;
	width: 590px;
	padding-top: 40px;
}

#sec01 .box01 p strong {
	color: #c91e1e;
}

#sec01 ul {
	display: flex;
	align-items: stretch;
	justify-content: center;
	flex-wrap: wrap;
	gap: 30px;
	margin-bottom: 90px;
}

#sec01 ul li {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	width: 300px;
	min-height: 330px;
	background: #edf3fa;
	position: relative;
	gap: 30px 0;
}

#sec01 ul li span {
	position: absolute;
	top: 0;
	left: 0;
	background: #20385a;
	width: 50px;
	height: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	font-size: 175%;
}

#sec01 h3.alC {
	margin-bottom: 120px;
}

#sec01 .box02 {
	border: 4px solid #000;
	border-radius: 20px;
	text-align: center;
	position: relative;
	margin-bottom: 45px;
}

#sec01 .box02 h4 {
	position: absolute;
	top: -55px;
	left: 50%;
	margin-left: -331px;
}

#sec01 .box02 p {
	font-size: 125%;
	line-height: 1.8;
	padding: 90px 0 40px;
}

#sec01 .box02 p strong {
	color: #c91e1e;
}

.arrowBox {
	position: relative;
	height: 110px;
}

.arrowBox p {
	position: absolute;
	top: -20px;
	left: 50%;
	margin-left: -322px;
	z-index: 10;
}



/*-----------------------------------------------

sec02

-----------------------------------------------*/

#sec02 .inner01 {
	background: #fff;
	border: 10px solid #c91e1e;
	box-sizing: border-box;
	padding: 50px 60px 100px;
}

#sec02 .box01 {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 30px;
}

#sec02 .box01 img {
	order: 1;
}

#sec02 .box01 div {
	order: 2;
	width: 590px;
}

#sec02 .box01 div h3 {
	width: 590px;
	margin: 0 0 30px -50px;
}

#sec02 .box01 p {
	font-size: 125%;
	line-height: 1.8;
}

#sec02 .box01 p strong {
	color: #c91e1e;
}

#sec02 .box02 {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-bottom: 60px;
}

#sec02 .box02 h4 {
	width: 100%;
	text-align: center;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
	padding: 30px 0;
	margin-bottom: 40px;
}

#sec02 .box02 dl {
	width: 300px;
}

#sec02 .box02 dl dt {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 70px;
}

#sec02 .box02 dl .img {
	text-align: center;
}

#sec02 .box02 dl .img img {
	width: 300px;
	height: 300px;
	object-fit: scale-down;
}

#sec02 .box03 {
	background: #edf3fa;
	border-radius: 20px;
	padding: 30px 40px 0;
	position: relative;
}

#sec02 .box03 h3 {
	text-align: center;
	margin-bottom: 20px;
}

#sec02 .box03 p {
	text-align: center;
	margin-bottom: 50px;
}

#sec02 .box03 .box03In {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}

#sec02 .box03 .box03In dl {
	width: 440px;
	display: flex;
	flex-wrap: wrap;
}

#sec02 .box03 .box03In dt {
	margin-bottom: 50px;
}

#sec02 .box03 .box03In .text {
	width: 200px;
	margin-left: 20px;
}

#sec02 .box03 .box03In .img01 {
	width: 220px;
	margin-top: -30px;
	text-align: center;
}

#sec02 .box03 .box03In .img02 {
	position: absolute;
	bottom: -50px;
	right: 35px;	
}

/*-----------------------------------------------

sec03

-----------------------------------------------*/

#sec03 {
	background: #000;
	padding: 80px 0 100px;
}

#sec03 .inner01 {
	width: 1000px;
}

#sec03 h3 {
	text-align: center;
	margin-bottom: 60px;
}

#sec03 .inner01 div {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#sec03 .inner01 div a {
	width: 480px;
	height: 130px;
	display: flex;
	align-items: center;
	font-size: 145%;
	color: #fff;
	font-weight: bold;
	text-decoration: none;
	background: #20385a url("/images/icon01_window.png") 97% center no-repeat;
	background-size: 22px auto;
	padding-left: 25px;
	box-sizing: border-box;
}

#sec03 .inner01 div a:hover {
	background: #45638d url("/images/icon01_window.png") 97% center no-repeat;
	background-size: 22px auto;
}



@media only screen and (max-width: 950px) {
  #header .inner, #breadcrumb, #main, #footer .inner {
    width: 100%; } }

@media only screen and (max-width: 800px) {

#detail_search {display: none; }

/*-----------------------------------------------

共通

-----------------------------------------------*/

.inner01 {
	width: 90vw;
	margin: 0 auto;
	position: relative;
}

.inner02 {
	width: 90vw;
	margin: 0 auto;
	position: relative;
}

.pcview {
	display: none;
}

.spview {
	display: inherit;
}

.notes {
	font-size: 62.5%;
}

.contentContainer {
	background: url("/images/bg01_3.jpg");
	padding-bottom: 10vw;
}


/*-----------------------------------------------

mainvisual

-----------------------------------------------*/

#mainvisual {
	padding: 13.33vw 0 5vw;
}

#mainvisual h2 {
	text-align: center;
}

#mainvisual h2 img {
	max-width: 100%;
}


/*-----------------------------------------------

sec01

-----------------------------------------------*/

#sec01 .inner01 {
	padding: 8vw 5vw 12vw;
	box-sizing: border-box;
	background: #fff;
}

#sec01 .box01 {
	display: block;
	margin: 0 0 8vw;
	text-align: center;
}

#sec01 .box01 p {
	font-size: 87.5%;
	width: 100%;
	padding-top: 5vw;
	text-align: left;
}

#sec01 .box01 p strong {
	color: #c91e1e;
}

#sec01 .box01 img {
	width: 60vw;
}



#sec01 ul {
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 2vw;
	margin-bottom: 8vw;
}

#sec01 ul li {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	width: 39vw;
	min-height: inherit;
	background: #edf3fa;
	position: relative;
	gap: 3vw 0;
	padding: 4vw;
	box-sizing: border-box;
}

#sec01 ul li:nth-child(1) img:nth-child(2) {
	width: 17.33vw;
}

#sec01 ul li:nth-child(1) img:nth-child(3) {
	width: 20vw;
}

#sec01 ul li:nth-child(2) img:nth-child(2) {
	width: 16vw;
}

#sec01 ul li:nth-child(2) img:nth-child(3) {
	width: 26vw;
}

#sec01 ul li:nth-child(3) img:nth-child(2) {
	width: 26vw;
}

#sec01 ul li:nth-child(3) picture img {
	width: 24.67vw !important;
}

#sec01 ul li:nth-child(4) img:nth-child(2) {
	width: 20.67vw;
}

#sec01 ul li:nth-child(4) img:nth-child(3) {
	width: 27.67vw;
}

#sec01 ul li:nth-child(5) img:nth-child(2) {
	width: 15.33vw;
}

#sec01 ul li:nth-child(5) picture img {
	width: 22.67vw !important;
}

#sec01 ul li:nth-child(6) img:nth-child(2) {
	width: 34.67vw;
}

#sec01 ul li:nth-child(6) img:nth-child(3) {
	width: 26vw;
}

#sec01 ul li span {
	width: 8vw;
	height: 8vw;
	font-size: 100%;
}

#sec01 h3.alC {
	margin-bottom: 13.33vw;
	text-align: center;
}

#sec01 h3.alC img {
	width: 68.267vw;
}

#sec01 .box02 {
	border: 2px solid #000;
	border-radius: 4vw;
	margin-bottom: 6vw;
}

#sec01 .box02 h4 {
	position: absolute;
	width: 80vw;
	top: -5.33vw;
	left: 50%;
	margin-left: -40vw;
}

#sec01 .box02 h4 img {
	width: 100%;
}

#sec01 .box02 p {
	font-size: 87.5%;
	padding: 13.67vw 5vw 6vw;
}

#sec01 .box02 p strong {
	color: #c91e1e;
}
#sec01 .box02 .img01 {
	width: 72.67vw;
	margin-bottom: 6vw;
}

#sec01 .box02 .spview h5{
	padding: 0 3.33vw;
	margin-bottom: 6.67vw;
}

#sec01 .box02 .spview .box02In {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 3.33vw;
	margin-bottom: 6vw;
}

#sec01 .box02 .spview .box02In p {
	padding: 0;
	width: 40.67vw;
	text-align:justify;
	font-size: 1.4rem;
}

#sec01 .box02 .spview .box02In img {
	width: 26.67vw;
}



.arrowBox {
	position: relative;
	height: 12vw;
}

.arrowBox p {
	position: absolute;
	top: -4vw;
	left: 50%;
	margin-left: -50vw;
	z-index: 10;
	width: 100%;
	padding: 0 5vw;
}

.arrowBox p img {
	width: 100%;
}

/*-----------------------------------------------

sec02

-----------------------------------------------*/

#sec02 .inner01 {
	background: #fff;
	border: 10px solid #c91e1e;
	box-sizing: border-box;
	padding: 12vw 5vw 8vw;
}

#sec02 .box01 {
	display: block;
	margin-top: 0;
	text-align: center;
}

#sec02 .box01 img {
	order: 1;
	width: 50vw;
}

#sec02 .box01 div {
	width: 100%;
}

#sec02 .box01 div h3 {
  width: 100%;
  margin: 0 0 5vw;
}

#sec02 .box01 p {
	width: 100%;
	font-size: 87.5%;
	line-height: 1.8;
	text-align: left;
}

#sec02 .box01 p strong {
	color: #c91e1e;
}

#sec02 .box02 {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-bottom: 0;
}

#sec02 .box02 h4 {
	width: 100%;
	text-align: center;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
	padding: 5vw 0;
	margin-bottom: 5vw;
}

#sec02 .box02 h4 img {
	width: 50vw;
}

#sec02 .box02 dl {
	width: 100%;
	margin-bottom: 8vw;
}

#sec02 .box02 dl dt {
	display: flex;
	align-items: center;
	justify-content: center;
	height: auto;
}

#sec02 .box02 dl dt img {
	width: auto;
}


#sec02 .box02 dl .img {
	text-align: center;
	margin: 5vw 0;
}

#sec02 .box02 dl .img img {
	width: 100%;
	height: 50vw;
	object-fit: scale-down;
}

#sec02 .box02 dl .text {
	font-size: 87.5%;
}


#sec02 .box03 {
	background: #edf3fa;
	border-radius: 4vw;
	padding: 4vw 5vw 2vw;
	position: relative;
}

#sec02 .box03 h3 {
	text-align: center;
	margin-bottom: 4vw;
}

#sec02 .box03 p {
	text-align: center;
	margin-bottom: 5vw;
}

#sec02 .box03 .box03In {
	display: block;
}

#sec02 .box03 .box03In dl {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 8vw
}

#sec02 .box03 .box03In dt {
	margin-bottom: 4vw;
}

#sec02 .box03 .box03In .text {
	width: 100%;
	font-size: 87.5%;
	margin: 0 0 4vw;
}

#sec02 .box03 .box03In .img01 {
	width: 100%;
	margin-top: 0;
	text-align: center;
}

#sec02 .box03 .box03In .img01 img {
	width: 25vw;
}

#sec02 .box03 .box03In .img02 {
	position: static;
	text-align: center;
	width: 100%;
}

#sec02 .box03 .box03In .img02 img {
	width: 30vw;
}


/*-----------------------------------------------

sec03

-----------------------------------------------*/

#sec03 {
	background: #000;
	padding: 6.67vw 0 2.67vw;
}

#sec03 .inner01 {
	width: 90vw;
}

#sec03 h3 {
	text-align: center;
	margin-bottom: 5vw;
}

#sec03 .inner01 div {
	display: block;
}

#sec03 .inner01 div a {
	width: 100%;
	height: 21.33vw;
	display: flex;
	align-items: center;
	font-size: 100%;
	color: #fff;
	font-weight: bold;
	text-decoration: none;
	background: #20385a url("/images/icon01_window.png") 97% center no-repeat;
	background-size: 5vw auto;
	padding-left: 4vw;
	box-sizing: border-box;
	margin-bottom: 4vw;
}

#sec03 .inner01 div a:hover {
background: #45638d url("/images/icon01_window.png") 97% center no-repeat;
background-size: 5vw auto;	
}

}

@media screen and (max-width: 575.98px) {
  #header {
    font-size: .7em; } }

@media only screen and (max-width: 500px) {
  #header_fontsize {
    display: none; }
  #header_sitemap {
    margin-right: 0; }
  .header_navi {
    margin-right: 0; } }
/*# sourceMappingURL=../../.map/assets/css/top.css.map */