@charset "utf-8";

.gfbox01 {
	margin-bottom: 60px;
}
.gf01 {
	margin-bottom: 30px;
}
.gf02 {
	background-image: url(../img/common/cmn_bg_01.png);
	background-repeat: repeat;
	padding-top: 20px;
	padding-right: 20px;
	padding-bottom: 5px;
	padding-left: 20px;
}
.gf03 {
	margin-bottom: 15px;
	padding-bottom: 15px;
	border-bottom: 1px solid #CCC;
}
.gf04 dt {
	font-size: 16px;
	font-weight: bold;
	color: #002060;
	margin-bottom: 5px;
}
.gf05 {
	font-weight: bold;
	color: #002060;
}
.gf06 {
	margin-bottom:20px;
}
.gf07 {
	color: #F00;
}

.cam01 {
	background-image: url(../img/campaign/cam_02.png);
	background-repeat: repeat;
	text-align: center;
	margin-bottom: 20px;
	padding-top: 20px;
	padding-bottom: 20px;
}
.cam02 {
	margin-bottom:50px;
}
.cam03 {
	margin-bottom:20px;
}
.cam04 {
	background-color: #EEE;
	text-align: center;
	border-radius: 8px;
	width: 680px;
	margin-right: auto;
	margin-left: auto;
	padding-top: 20px;
	padding-bottom: 20px;
}
.cam05 {
	vertical-align: top;
	display: inline-block;
}
.cam06 {
	vertical-align: top;
	display: inline-block;
	margin-right: 25px;
	margin-left: 10px;
}
.cam07 {
	vertical-align: top;
	display: inline-block;
}

.rec01 {
	margin-top: 25px;
	background-image: url(../img/common/cmn_bg_01.png);
	background-repeat: repeat;
	padding-top: 14px;
	padding-right: 20px;
	padding-bottom: 14px;
	padding-left: 20px;
	border: 1px solid #7F8FAF;
	font-weight: bold;
}
.rec02 {
	margin-top:25px;
}
.all01 {
	text-align: center;
	padding-top: 25px;
	padding-bottom: 25px;
}
.all02 {
	display: table;
	width: 100%;
	background-image: url(../img/common/bg_yll.png);
	background-repeat: repeat;
	min-height:500px;
	margin-bottom:80px;
}
.all03 {
	vertical-align: middle;
	display: table-cell;
	padding: 45px;
	width: 50%;
	background-image: url(../img/alliance/all_03.png);
	background-repeat: no-repeat;
	background-size:cover;
}
.all04 {
	vertical-align: middle;
	display: table-cell;
	padding: 45px;
	width: 50%;
	text-align: left;
}
.all05 {
	margin-bottom: 25px;
}
.all06 {
	margin-bottom: 20px;
}
.re01 {
	background-image: url(../img/reason/re_01.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:cover;
	margin-bottom:40px;
}
.re02 {
	width: 1000px;
	margin-right: auto;
	margin-left: auto;
	padding-top: 120px;
	padding-bottom: 120px;
	text-align:left;
}
.re03 {
	margin-bottom:60px;
}
.re04 {
	width: 100%;
	display: table;
	margin-bottom: 25px;
	padding-bottom: 25px;
	border-bottom: 1px dotted #CCC;
}
.re04:last-child {
	border-bottom: 1px none #CCC;
}
.re05 {
	vertical-align: top;
	display: table-cell;
	width: 85px;
}
.re06 {
	vertical-align: top;
	display: table-cell;
}
.re06 dl dt {
	font-size: 24px;
	font-weight: bold;
}
.re06 dl dd {
	font-size: 16px;
}

.wo01 {
	margin-bottom: 60px;
}
.wo03 {
	float: left;
	width: 330px;
}
.wo04 {
	float: right;
	width: 640px;
}
.wo05 {
	margin-bottom: 15px;
}
.wo06 {
	background-image: url(../img/work01/wo_07.png);
	background-repeat: repeat;
	padding: 15px;
	margin-bottom: 30px;
	border: 2px solid #002060;
}
.wo06 dt {
	font-size: 16px;
	font-weight: bold;
	color: #001F5F;
	margin-bottom: 5px;
}
.wo06 dd ul li {
	text-indent: -0.9em;
	margin-left: 0.9em;
}
.wo07 {
	text-align: left;
}
.wo07 li {
	display: inline-block;
	margin-right: 20px;
	vertical-align:top;
}
.wo07 li button {
	vertical-align:top;
}
.wo07 .roll img {
/*	margin-top:-21px;*/
}
.clbox01 {
	margin-bottom:60px;
}
.clbox02 {
	float: left;
	width: 740px;
}
.clbox02 dl {
}
.clbox02 dl a {
	display: block;
	padding-top: 15px;
	padding-right: 20px;
	padding-bottom: 15px;
	padding-left: 20px;
}
.clbox02 dl a:hover {
	opacity:0.8;
}
.clbox02 dl:nth-child(odd) {
	background-image: url(../img/common/cmn_bg_01.png);
	background-repeat: repeat;
}
.clbox02 dl:nth-child(even) {
	background-image: url(../img/common/cmn_bg_02.png);
	background-repeat: repeat;
}
dl.normal dd p.TitleArea span.date {
	padding-right: 15px;
	display: inline-block;
	color: #001F5F;
	font-weight: bold;
	font-size: 14px;
	vertical-align:middle;
}
dl.normal dd p.TitleArea span.title {
    padding-right: 0px;
    display: inline-block;
	color: #001F5F;
	font-size: 14px;
	vertical-align:middle;
}
.clbox03 {
	float: right;
	width: 230px;
}
.clbox03 .cl01 {
	font-size: 16px;
	font-weight: bold;
	color: #002060;
	margin-bottom: 3px;
}
.clbox03 .catelist {
	border-top: 1px solid #002060;
	border-left: 1px solid #002060;
	border-right-width: 1px;
	border-right-style: solid;
	border-bottom-color: #002060;
}
.clbox03 .catelist li {
}
.clbox03 .catelist li a {
	color: #002060;
	display: block;
	padding-top: 7px;
	padding-right: 15px;
	padding-bottom: 7px;
	padding-left: 15px;
	border-bottom: 1px solid #002060;
	text-decoration:none;
}
.clbox03 .catelist li:hover a {
	color: #FFF;
	background-color: #002060;
}
.flo01 {
	margin-bottom:60px;
}
.flo02 {
}
.flo03 {
	width:158px;
	float:left;
	margin-left:10px;
}
.flo03:first-child {
	margin-left:0;
}
.flo04 {
	text-align: center;
}
.flo05 {
	font-size:12px;
}
.flo06 {
	text-align: center;
	margin-bottom: 12px;
	color: #FFF;
	background-color: #002060;
	text-align: center;
	padding-top: 2px;
	padding-bottom: 2px;
	width: 5em;
	margin-left: auto;
	margin-right: auto;
	font-size: 13px;
}
.flo07 {
	background-image: url(../img/flow/flo_bg.png);
	background-repeat: repeat;
	padding-top: 25px;
	padding-right: 10px;
	padding-bottom: 10px;
	padding-left: 10px;
}
.flo08 {
	font-size: 16px;
	font-weight: bold;
	color: #001F5F;
	margin-bottom: 12px;
	padding-top: 20px;
	padding-bottom: 10px;
	border-bottom: 1px solid #001F5F;
	text-align: center;
	width:100%;
	display:table;
	line-height:1.3;
}
.flo08 span {
	display: table-cell;
	vertical-align:middle;
}
.normalwrap {
	margin-bottom:30px;
}

.mapblock {
	margin-bottom: 60px;
	position: relative;
}
.mapblock .maparea li {
	position: absolute;
}
.mapblock .maparea li.pt01 {
    left: 787px;
    top: 191px;
}
.mapblock .maparea li.pt02 {
    left: 707px;
    top: 154px;
}
.mapblock .maparea li.pt03 {
    left: 756px;
    top: 59px;
}
.mapblock .maparea li.pt04 {
    left: 648px;
    top: 230px;
}
.mapblock .maparea li.pt05 {
    left: 596px;
    top: 123px;
}
.mapblock .maparea li.pt06 {
    left: 488px;
    top: 123px;
}
.mapblock .maparea li.pt07 {
    left: 483px;
    top: 168px;
}
.mapblock .maparea li.pt08 {
    left: 418px;
    top: 83px;
}
.mapblock .maparea li.pt09 {
    left: 383px;
    top: 168px;
}
.mapblock .maparea li.pt10 {
    left: 320px;
    top: 123px;
}
.mapblock .maparea li.pt11 {
    left: 251px;
    top: 79px;
}
.mapblock .maparea li.pt12 {
    left: 215px;
    top: 123px;
}
.mapblock .maparea li.pt13 {
    left: 116px;
    top: 127px;
}
.mapblock .maparea li.pt14 {
    left: 95px;
    top: 71px;
}
.mapblock .maparea li.pt15 {
    left: 245px;
    top: 184px;
}
.mapblock .maparea li.pt16 {
    left: 136px;
    top: 200px;
}
.mapblock .maparea li.pt17 {
    left: 297px;
    top: 220px;
}
.mapblock .maparea li.pt18 {
    left: 251px;
    top: 266px;
}
.mapblock .maparea li.pt19 {
    left: 137px;
    top: 309px;
}
.mapblock .maparea li.pt20 {
    left: 789px;
    top: 333px;
}

@media screen and (max-width: 767px) {
▼SP {
}

.gfbox01 {
	margin-bottom: 30px;
}
.gf01 {
	margin-bottom: 20px;
}
.gf02 {
	padding-top: 12px;
	padding-right: 12px;
	padding-bottom: 5px;
	padding-left: 12px;
}
.gf03 {
	margin-bottom: 10px;
	padding-bottom: 10px;
}
.gf04 dt {
	font-size: 14px;
}
.gf06 {
	margin-bottom:10px;
}
.cmntitle01 {
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 1;
    padding-bottom: 12px;
    padding-top: 12px;
	background-size: contain , 100%;
}
.cmntitle01 span {
    padding-left: 20px;
}

.cam01 {
	margin-bottom: 20px;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left:2%;
	padding-right:2%;
}
.cam02 {
	margin-bottom:20px;
}
.cam03 {
	margin-bottom:10px;
}
.cam04 {
	background-color: #EEE;
	text-align: center;
	border-radius: 8px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	padding-top: 20px;
	padding-bottom: 20px;
}
.cam05 {
	vertical-align: top;
	display: block;
	margin-bottom:15px;
}
.cam06 {
	vertical-align: top;
	display: block;
	margin-right: 0px;
	margin-left: 0px;
	margin-bottom:15px;
}
.cam07 {
	vertical-align: top;
	display: block;
}
.rec01 {
	margin-top: 15px;
	padding-top: 12px;
	padding-right: 12px;
	padding-bottom: 12px;
	padding-left: 12px;
}
.rec02 {
	margin-top:15px;
}
.all01 {
	text-align: center;
	padding-top: 20px;
	padding-bottom: 20px;
	margin-left:2%;
	margin-right:2%;
}
.all02 {
	display: block;
	width: 96%;
	background-image: url(../img/common/bg_yll.png);
	background-repeat: repeat;
	min-height:1px;
	margin-bottom:30px;
	margin-left:2%;
	margin-right:2%;
}
.all03 {
	vertical-align: middle;
	display: block;
	width: 100%;
	background-image: none;
	background-repeat: no-repeat;
	background-size:cover;
	padding:0;
}
.all03 img {
	width: 100%;
}
.all04 {
	vertical-align: middle;
	display: block;
	width: 94%;
	text-align: left;
	padding-top: 15px;
	padding-right: 3%;
	padding-bottom: 15px;
	padding-left: 3%;
}
.all05 {
	margin-bottom: 20px;
	width:160px;
}
.all06 {
	margin-bottom: 15px;
}
/*.all07 {
	width: 200px;
	margin-right: auto;
	margin-left: auto;
}
*/.re01 {
	background-image: url(../img/reason/re_08.png);
	background-repeat: repeat;
	background-position: center center;
	background-size: 10px;
	margin-bottom: 30px;
}
.re02 {
	width: 200px;
	margin-right: auto;
	margin-left: auto;
	padding-top: 20px;
	padding-bottom: 20px;
	text-align:center;
}
.re03 {
	margin-bottom:15px;
}
.re04 {
	width: 100%;
	display: table;
	margin-bottom: 15px;
	padding-bottom: 15px;
	border-bottom: 1px dotted #CCC;
}
.re04:last-child {
	border-bottom: 1px none #CCC;
}
.re05 {
	vertical-align: top;
	display: table-cell;
	width: 40px;
}
.re06 {
	vertical-align: top;
	display: table-cell;
	padding-left:10px;
}
.re06 dl dt {
	font-size: 16px;
	font-weight: bold;
}
.re06 dl dd {
	font-size: 12px;
}

.wo01 {
	margin-bottom: 20px;
}
.wo03 {
	float: none;
	width: 100%;
	margin-bottom:10px;
}
.wo03 img {
	width: 100%;
}
.wo04 {
	float: none;
	width: 100%;
}
.wo05 {
	margin-bottom: 15px;
}
.wo06 {
	background-image: url(../img/work01/wo_07.png);
	background-repeat: repeat;
	padding: 12px;
	margin-bottom: 15px;
	border: 2px solid #002060;
}
.wo06 dt {
	font-size: 14px;
	font-weight: bold;
	color: #001F5F;
	margin-bottom: 5px;
}
.wo06 dd ul li {
	text-indent: -0.9em;
	margin-left: 0.9em;
}
.wo07 {
	text-align: center;
}
.wo07 li {
	display: block;
	margin-right: auto;
	margin-left:auto;
	width:240px;
	vertical-align:top;
	/*margin-bottom:15px;*/
}
.wo07 li button {
  margin-top:21px;
	vertical-align:top;
}
.clbox01 {
	margin-bottom:30px;
}
.clbox02 {
	float: none;
	width: 100%;
	margin-bottom:30px;
}
.clbox02 dl a {
	display: block;
	padding-top: 12px;
	padding-right: 12px;
	padding-bottom: 12px;
	padding-left: 12px;
}
dl.normal dd p.TitleArea span.date {
	padding-right: 15px;
	display: inline-block;
	color: #001F5F;
	font-weight: bold;
	font-size: 12px;
	vertical-align:middle;
}
dl.normal dd p.TitleArea span.title {
    padding-right: 0px;
    display: inline-block;
	color: #001F5F;
	font-size: 12px;
	vertical-align:middle;
}
.clbox03 {
	float: none;
	width: 100%;
}
.clbox03 .cl01 {
	font-size: 14px;
}
.clbox03 .catelist li a {
	color: #002060;
	display: block;
	padding-top: 10px;
	padding-right: 12px;
	padding-bottom: 10px;
	padding-left: 12px;
	border-bottom: 1px solid #002060;
	text-decoration:none;
}
.flo01 {
	margin-bottom:30px;
}
.flo02 {
}
.flo03 {
	width:100%;
	float:none;
	margin-left:0;
	margin-bottom:20px;
	display:table;
}
.flo03.type02 {
	width:100%;
}
.flo04 {
}
.flo05 {
	font-size:12px;
}
.flo06 {
	text-align: center;
	margin-bottom: 12px;
	color: #FFF;
	background-color: #002060;
	text-align: center;
	padding-top: 2px;
	padding-bottom: 2px;
	width: 5em;
	margin-left: auto;
	margin-right: auto;
	font-size: 13px;
}
.flo07 {
	background-image: url(../img/flow/flo_bg.png);
	background-repeat: repeat;
	padding-top: 25px;
	padding-right: 10px;
	padding-bottom: 10px;
	padding-left: 10px;
}
.flo08 {
	font-size: 16px;
	font-weight: bold;
	color: #001F5F;
	margin-bottom: 12px;
	padding-top: 20px;
	padding-bottom: 10px;
	border-bottom: 1px solid #001F5F;
	text-align: center;
	width:100%;
	display:table;
	line-height:1.3;
}
.flo08 span {
	display: table-cell;
	vertical-align:middle;
}
.map_wrap {
    margin-bottom: 25px;
}
.mapblock {
	margin-bottom: 15px;
	position: relative;
}
.mapblock .mapimg {
	margin-bottom:15px;
	display:none;
}
/*.mapblock .maparea li {
	position: inherit;
	float:left;
	margin-left:2%;
	width:32%;
    text-align: center;
	margin-bottom:10px;
}
.mapblock .maparea li:nth-child(3n+1) {
	margin-left:0;
}*/
.mapblock .maparea li {
	position: inherit;
	float:left;
	margin-left:2%;
	width:23.5%;
    text-align: center;
	margin-bottom:10px;
}
.mapblock .maparea li:nth-child(4n+1) {
	margin-left:0;
}
.area_wrap .category_wrap .btn_search {
    background-color: transparent;
}
.form_wrap select {
	width:100%;
}
#pagetop {
	bottom:60px!important;
}
▲SP{
}

}



/*2021*/
.item_wrap.type02 .detail_bottom {
	display:none;
}
.more_wrap .item_wrap .item_bloc .item_inner .detail_area dl dt {
	font-weight: bold;
	color: #001F5F;
}
.num02 {
	font-size: 36px;
	color: #FE5B5B;
}
.more_wrap .item_wrap .item_bloc .item_inner .tag_area ul li.tag01.type_syokusyu {
	color: #009999;
	width: auto;
	background-color: #FFFFFF;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	padding-top: 4px;
	padding-right: 12px;
	padding-bottom: 4px;
	padding-left: 12px;
	border: 2px solid #009999;
}
.more_wrap .item_wrap .item_bloc .item_inner .tag_area ul li.tag03.type_koyou {
	color: #E87B0F;
	width: auto;
	background-color: #FFFFFF;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	padding-top: 4px;
	padding-right: 12px;
	padding-bottom: 4px;
	padding-left: 12px;
	border: 2px solid #E87B0F;
}
.more_wrap .item_wrap .item_bloc .item_inner .tag_area ul li.tag04.type_shisetsu {
	color: #356098;
	width: auto;
	background-color: #FFFFFF;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	padding-top: 4px;
	padding-right: 12px;
	padding-bottom: 4px;
	padding-left: 12px;
	border: 2px solid #356098;
}
.more_wrap .item_wrap .item_bloc .item_inner .cta_area .btn_entry.type_detail a {
    background-color: #FE5B5B;
    background-image: url(../img/add/icon_add.png);
    background-position: 55px 15px;
}
.more_wrap .item_wrap .item_bloc .item_inner .cta_area .btn_entry a:before {
    top: 5px;
}
.addbtn {
	text-align:center;
}
.addbtn li {
	display:inline-block;
	margin-left:15px;
	margin-right:15px;
}


●SP{
}
@media screen and (max-width: 767px) {

.more_wrap .item_wrap .item_bloc .comment {
    padding: 3%;
}
.num02 {
	font-size: 20px;
}
.more_wrap .item_wrap .item_bloc .item_inner .tag_area ul li.tag01.type_syokusyu {
	font-size: 14px;
	padding-top: 2px;
	padding-right: 7px;
	padding-bottom: 2px;
	padding-left: 7px;
	border: 1px solid #009999;
}
.more_wrap .item_wrap .item_bloc .item_inner .tag_area ul li.tag03.type_koyou {
	font-size: 14px;
	padding-top: 2px;
	padding-right: 7px;
	padding-bottom: 2px;
	padding-left: 7px;
	border: 1px solid #E87B0F;
}
.more_wrap .item_wrap .item_bloc .item_inner .tag_area ul li.tag04.type_shisetsu {
	font-size: 14px;
	padding-top: 2px;
	padding-right: 7px;
	padding-bottom: 2px;
	padding-left: 7px;
	border: 1px solid #356098;
}
.addbtn {
	text-align:center;
}
.addbtn li {
	display:block;
	margin-left:15px;
	margin-right:15px;
	margin-bottom:15px;
}






●SP{
}
}