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

/*sidebar*/
#sidebar .box01 {box-sizing: border-box; border: 3px solid #1b1b1b; background: url("img/side/box01_bg.jpg")top left repeat; padding: 10px 0;}
#sidebar .box02 .under {background: #fff; box-sizing: border-box; border: 2px solid #004ea2; padding: 10px; border-top: none;}
#sidebar .box03 {box-sizing: border-box; border: 3px solid #000; background: url("img/side/box03_bg.jpg")top left repeat; padding: 10px 0;}
#sidebar .box04 {box-sizing: border-box; border: 3px solid #000; background: #fff; padding-bottom: 10px;}
#sidebar .box05 {background: #f3f3f3; padding-bottom: 10px; box-sizing: border-box; border-bottom: 5px solid #004ea2;}

/*contact_banner*/
#contact_banner {box-sizing: border-box; border: 3px solid #004ea2; background: #f6f6f6; padding-bottom: 25px; line-height: 1; margin-top: 40px;}
#contact_banner .con_over {background: url("img/contactbnr/title_bg.jpg")top left repeat; padding: 20px 0;}
#contact_banner .con_over p {margin-left: 20px; font-size: 45px;}
#contact_banner .con_inner {padding: 20px;}
#contact_banner .con_tel {font-size: 30px;}
#contact_banner .con_tel span {font-size: 45px;}
#contact_banner .con_mail {box-sizing: border-box; background: #004ea2; width: 263px; height: 48px;}
#contact_banner .con_mail p {margin-left: 10px;}
#contact_banner .con_txt01 {font-size: 14px; padding: 5px 0; box-sizing: border-box; border: 2px solid #1b1b1b; margin: 0 20px;}
#contact_banner .con_txt02 {font-size: 18px; margin-top: 20px;}
#contact_banner .con_txt03 {font-size: 18px; margin-top: 10px;}

/*contact*/
#contact .tel {box-sizing: border-box; border: 3px solid #004ea2; margin: 20px auto;}
#contact .txt01 {font-size: 16px; line-height: 1.5; margin: 20px 0;} 
#contact h2 {box-sizing: border-box; border-bottom: 1px solid #004ea2; padding-bottom: 5px; font-size: 22px;}
#contact h2 span {box-sizing: border-box; padding-left: 10px; border-left: 5px solid #004ea2;}
#contact ul {margin-bottom: 20px;}
#contact li {font-size: 14px; line-height: 1; margin-top: 20px;}
#contact table {width: 100%; box-sizing: border-box; border: 2px solid #d2d2d2; margin-bottom: 40px;}
#contact table th,#contact table td {padding: 10px 20px; box-sizing: border-box; border-bottom: 1px solid #d2d2d2; font-size: 14px;}
#contact table th{font-weight: bold; vertical-align: middle; width: 190px; background-color: #004ea2; color: #fff; position: relative;}
#contact table input,#contact table textarea {width: 100%; box-sizing: border-box; padding: 5px 10px; font-size: 16px; font-weight: bold; border: 1px solid #d2d2d2;}
#contact table textarea {font: inherit;}
#contact table input,#contact table textarea {outline: none;}
.mwform-radio-field input,.mwform-checkbox-field input {width: auto!important; padding: inherit!important;}
.mwform-checkbox-field label {font-weight: bold!important;}
.mwform-radio-field-text {font-weight: bold;}
#contact table .tel_area {width: auto;}
/*確認画面へ進むボタン用*/
.mw_wp_form_input .btn input:hover { opacity: 0.7;}
.mw_wp_form_input .btn input{
    font-size: 20px;
    width: 400px;
    padding: 20px 0;
    line-height: 1;
	background: url("img/contact/btn_bg.png") center right 20px no-repeat;
	background-color: #004ea2;
	box-sizing: border-box;
	font-weight: bold;
	border: 3px solid #000;
	color: #fff;
}
#contact .essential {color: #ff0000; display: flex; align-items: center; line-height: 1; top: 0; bottom: 0; right: 20px; margin: auto; position: absolute;}
#contact .thanks {margin-bottom: 40px;}

/*company*/
#company table {box-sizing: border-box; border: 3px solid #000; background: #fff; width: 100%;}
#company th,#company td {box-sizing: border-box; padding: 20px; font-size: 14px; line-height: 1; border-bottom: 1px solid #aaaaaa;}
#company th {background: #004ea2; width: 145px; text-align: center;}
#company iframe {box-sizing: border-box; width: 100%; height: 350px;}
#company .txt_box {box-sizing: border-box; border: 3px solid #000; background: #fff; padding: 20px; font-size: 14px; line-height: 1.8;}
#company .txt_box .txt {margin-top: 20px;}
#company .sitemap .box div {width: 50%;}
#company .sitemap .box a {font-size: 20px; line-height: 1; box-sizing: border-box; border-left: 3px solid #004ea2; padding-left: 10px; margin-top: 20px;}
#company .sitemap .box a:nth-child(1) {margin-top: 0;}

/*featured*/
#featured .box01 {background: #004ea2; padding: 20px 3px 3px;}
#featured .icon01{margin-right: 20px;}
#featured .box01 h2{font-size:30px; border-bottom: solid 3px #fff; text-align: center; margin: 0 20px 20px; box-sizing: border-box;}
#featured .box01 .title_box{padding-bottom: 20px;}
#featured .box01 .inner01{background: url("img/featured/box01_bg.jpg")top left repeat; padding: 37px 20px 20px; box-sizing: border-box; text-align: center;}
#featured .box01 .con01{box-sizing: border-box; box-shadow: 3px 3px #000; padding: 3px 3px; background: #004ea2; position: relative;}
#featured .box01 .con01 .box01_no{position: absolute; top: -20px; left: 10px;}
#featured .box01 .con01 p{font-size: 16px; line-height: 1.2; text-align: center;margin-top: 10px;}
#featured .box01 a:hover img {filter: alpha(opacity=100);	opacity: 1;}
#featured .box02 {position: relative; background: url("img/featured/box01_bg.jpg")top left repeat; padding: 20px 0; box-sizing: border-box; border: solid 3px #004ea2;font-size: 20px; line-height: 1;}
#featured .box02 .title01{position: relative; padding: 40px 20px 20px; background: #004ea2; box-sizing: border-box; border-bottom: solid 6px #000; border-top: solid 3px #000; border-right: solid 3px #000; width: 597px; font-size: 28px;　margin-bottom: 20px;}
#featured .box02 .title01::after{content: ''; position: absolute; background: url("img/featured/icon02.png")top right no-repeat; bottom: 10px; right: -90px; width:164px; height: 56px;}
#featured .box02 .title01::before,#featured .box02 .title02::before{content: ''; position: absolute; background: url("img/featured/box02_icon01.png")top right no-repeat; bottom: 0; left: 10px; width: 111px; height: 65px;}
#featured .box02 .title00::before {display: none;}
#featured .box02 .title00::after{content: ''; position: absolute; background: url("img/featured/icon02_01.png")top right no-repeat; bottom: 15px; right: -90px; width: 210px; height: 69px;}
#featured .box02 .title02::after{content: ''; position: absolute; background: url("img/featured/icon06.png")top right no-repeat; bottom: 15px; right: -90px; width: 210px; height: 69px;}
#featured .box02 .title01 img{position: absolute; top: -20px; left: 10px;}
#featured .box02 .box02_txt01 {position: relative; padding: 20px 50px;}s
#featured .box02 .box02_txt01::before {content: ''; position: absolute; background: url("img/featured/box02_txt00.png")top left no-repeat; width: 74px; height: 74px; top: 25px; left:10px;}
#featured .box02 .box02_txt01 img{margin: 10px auto;}
#featured .box02 .txtbox{padding-right: 20px; box-sizing: border-box; border: solid 3px #000; margin: auto 20px; background: #fff;width: 669px; height: 120px; line-height: 1.5;}
#featured .box02 .txtbox img{margin-top: -40px; margin-right: 20px;}
#featured .box02 .arrow{margin: auto;}
#featured .box02 .box02_txt03{position: relative; margin: 40px auto;}
#featured .box02 .box02_txt03::before{content: ''; position: absolute; background: url("img/featured/box02_txt02.png")top left no-repeat; top: -35px; left: 10px; width: 118px; height: 52px;}
#featured .box02 .inner_box{ box-sizing: border-box; margin: 20px 20px 0;}
#featured .box02 .inner_box h4{position: relative; background: url("img/featured/title_bg.png")top right no-repeat; background-color: #63b4cf; height: 95px; padding-left:20px; line-height: 1.5; font-size: 23px;}
#featured .box02 .inner_box h4::after{content: ''; position: absolute; background: url("img/featured/icon05.png")no-repeat; bottom: 0; right: 10px; width: 100px; height: 134px;}
#featured .box02 .inner_box h4 p{position: relative; z-index: 100; text-shadow: 0px 0px 3px #63b4cf;}
#featured .box02 .inner_box .txt{box-sizing: border-box; border: solid 3px #b5b5b5; padding: 20px; line-height: 1.5; font-size: 16px; border-top: none; background: #fff;}
#featured .box02 .inner_box .txt .p01{margin-top: 10px;}
#featured .box02 .inner_box .txt .add_txt {margin-top: 20px; text-align: center; color: #fe0000;}
#featured .box02 .inner_box .txt span{font-size: 25px;}

/*service*/
#service .box01{padding: 20px; box-sizing: border-box; border: solid 3px #004ea2; background: url("img/featured/box01_bg.jpg")top left repeat;}
#service .box01 .txt01{font-size: 18px; line-height: 1.5; padding: 5px 0 15px;}
#service .box01 .inner01{position: relative; z-index: 10;}
#service .box01 .inner01::before{content: ''; position: absolute; background: url("img/service/icon01.png")top right no-repeat; top: -191px; right: 20px; width:180px; height: 205px;}
#service .box01 .inner01 a{ position: relative; z-index: 10;}
#service .box01 .inner01 a:nth-child(n + 3) {margin-top: 10px;}
#service .box02 h3{font-size: 40px; line-height: 1; background: #004ea2; padding: 20px;}
#service .box02 .pad_box{padding: 20px;}
#service .box02 {box-sizing: border-box; border: solid 3px #004ea2; background: url("img/featured/box01_bg.jpg")top left repeat; line-height: 1; font-size: 30px;}
#service .box02 .txt01{font-size: 45px; margin-bottom: 20px;}
#service .box02 .table01{position: relative; padding: 20px; background: url("img/service/box02_bg.jpg")top left repeat;box-sizing: border-box;  border: solid 3px #b5b5b5; margin-top: 20px;}
#service .box02 .table01::after{content: ''; position: absolute; background: url("img/service/box01_icon01.png")bottom right no-repeat; bottom: 0; right: 10px; width: 175px; height: 188px;}
#service .box02 .table01 table{width: 100%; font-size: 16px; border-collapse: separate; border-spacing: 0 10px;}
#service .box02 .txt02{font-size: 30px; line-height: 1; margin-top: 20px; margin-bottom: 20px;}
#service .box02 .txt02 .big{font-size: 40px;}
#service .con01 {margin-top: 40px;}
#service .title_box{background: url("img/service/title_bg.png")top left no-repeat; background-color: #63b4cf; font-size: 16px;height: 73px; padding-left: 20px; line-height: 1.2;}
#service h4{font-size: 40px; margin-left: 50px;}
#service .con01 .inner img{margin-right: 20px;}
#service .con01 .inner {font-size: 14px; line-height: 1.7; margin: 20px 0 40px;}
#service .point_box{box-sizing: border-box; border: solid 3px #000; background: url("img/service/under01_bg.png")right center no-repeat;background-color: #fff; padding: 35px 20px 20px; position: relative;}
#service h5{background: #000; display: inline-block; padding: 10px; line-height: 1; font-size: 20px; position: absolute; top: -21px; left: -3px;}
#service .box02 .ul01{position: relative; line-height: 1; font-size: 20px; }
#service .box02 .ul01::after{content: ''; position: absolute; background: url("img/service/box01_icon02.png")no-repeat; width: 150px; height: 202px; bottom: -20px; right: -10px;}
#service .box02 li:nth-child(n + 2){margin-top: 13px;}
#service .box02 .table02{position: relative; padding: 20px; background: url("img/service/box02_bg.jpg")top left repeat;box-sizing: border-box;  border: solid 3px #b5b5b5; margin-top: 20px;}
#service .box02 .table02::after{content: ''; position: absolute; background: url("img/service/box02_icon01.png")bottom right no-repeat; bottom: 0; right: 10px; width: 219px; height: 188px;}
#service .box02 .table02 table{width: 100%; font-size: 16px; border-collapse: separate; border-spacing: 0 10px;}
#service .box02 .ul02{position: relative; line-height: 1; font-size: 20px; }
#service .box02 .ul02::after{content: ''; position: absolute; background: url("img/service/box02_icon02.png")no-repeat; width: 161px; height: 202px; bottom: -20px; right: -21px;}
#service .box02 .table03{position: relative; padding: 20px; background: url("img/service/box02_bg.jpg")top left repeat;box-sizing: border-box;  border: solid 3px #b5b5b5; margin-top: 20px;}
#service .box02 .table03::after{content: ''; position: absolute; background: url("img/service/box03_icon01.png")bottom right no-repeat; bottom: 0; right: 0; width: 198px; height: 188px;}
#service .box02 .table03 table{width: 100%; font-size: 16px; border-collapse: separate; border-spacing: 0 10px;}
#service .box02 .ul03{position: relative; line-height: 1; font-size: 20px; }
#service .box02 .ul03::after{content: ''; position: absolute; background: url("img/service/box03_icon02.png")no-repeat; width: 171px; height: 202px; bottom: -20px; right: -20px;}
#service .box02 .table04{position: relative; padding: 20px; background: url("img/service/box02_bg.jpg")top left repeat;box-sizing: border-box;  border: solid 3px #b5b5b5; margin-top: 20px;}
#service .box02 .table04::after{content: ''; position: absolute; background: url("img/service/box04_icon01.png")bottom right no-repeat; bottom: 0; right: 0; width: 207px; height: 194px;}
#service .box02 .table04 table{width: 100%; font-size: 16px; border-collapse: separate; border-spacing: 0 10px;}
#service .box02 .ul04{position: relative; line-height: 1; font-size: 20px; }
#service .box02 .ul04::after{content: ''; position: absolute; background: url("img/service/box04_icon02.png")no-repeat; width: 169px; height: 203px; bottom: -20px; right: -20px;}
#service .under_box {box-sizing: border-box; border: 3px solid #b5b5b5; background: url("img/service/under_box_bg.jpg")top left repeat;}
#service .under_box h4 {box-sizing: border-box; background: #004ea2; font-size: 28px; padding: 15px 0; margin-left: 0;}
#service .under_box .inner01{font-size: 20px; line-height: 1; padding: 5px 20px;}
#service .under_box .bdr_b{box-sizing: border-box; border-bottom: solid 1px #004ea2; padding: 15px 0;}
#service .under_box .bdr_b:last-child{border-bottom: none;}
#service .under_box .tag02{font-size: 16px;}
#service .under_box .place span{font-size: 14px;}
#service .under_box .place02{margin-right: 20px;}


/*reason*/
#reason .main{position: relative;}
#reason .mainbox{position: absolute; bottom: 10px; left: 10px; padding: 10px; background: #fff;}
#reason .mainbox a{margin-right: 10px;}
#reason .mainbox a:nth-child(4){margin-right: 0;}
#reason .title {padding: 10px; font-size: 30px; line-height: 1; background: url("img/reason/title_bg01.jpg")top left repeat;}
#reason .con01{padding: 40px 20px 20px; background: url("img/featured/box01_bg.jpg")top left repeat; box-sizing: border-box; border: solid 3px #004ea2; font-size: 30px;}
#reason .con01 h4{margin: 20px auto 40px;}
#reason .con01 h5{background: #004ea2; padding: 10px; margin-bottom: 20px;}
#reason .inner {margin-bottom: 20px; font-size: 14px; line-height: 1.7;}
#reason .inner img{margin-right: 20px;}
#reason .under {box-sizing: border-box; border: solid 3px; padding: 40px 20px 0; background: #fff; position: relative; margin-top: 50px;}
#reason .under::after {content: ''; position: absolute;background: url("img/reason/point.png")top left no-repeat; width: 268px; height: 35px; top: -34px; left: 0;}
#reason .under h6{font-size: 25px; line-height: 1; margin-bottom: 40px;}
#reason .end{margin-bottom: 40px; margin-top: 20px;}

/*menu*/
#menu .titlebox{background: #004ea2;}
#menu .titlebox p{background: #000; width: 80px; height: 80px; font-size: 50px; line-height: 1;}
#menu .box01 .title{font-size: 30px; line-height: 1; margin-top: 20px;}
#menu .con01{box-sizing: border-box; border: solid 3px #004ea2; margin-top: 20px;}
#menu .con01 .box01{border-bottom: none; font-size: 14px; line-height: 1.5;}
#menu .inner01{margin: 20px 0; padding: 0 20px;}
#menu .inner01 img{margin-right: 20px; box-sizing: border-box; border: solid 3px;}
#menu .inner02 {margin-top: 20px; padding: 0 20px;}
#menu .inner02 img{margin-left: 20px; box-sizing: border-box; border: solid 3px;}
#menu .box01 .end{position: relative;}
#menu .box01 .end::before{content: ''; position: absolute; background: url("img/menu/box01_end03.png")top left no-repeat; width: 677px; height: 133px; top: 23px; left: 20px; z-index: 10;}
#menu .box01 .end::after {content: ''; position: absolute; background: url("img/menu/box01_end02.png")bottom right no-repeat; width:144px; height: 195px; bottom: 0; right: 20px;}
#menu .con01 .box02{border-top: none; font-size: 14px; line-height: 1.5;}
#menu .box02 .title{position: relative;}
#menu .box02 .title::before{content: ''; position: absolute; background: url("img/menu/box02_title02.png")top left no-repeat; width: 180px; height: 180px; top: 0px; left: 20px;}
#menu .box02 .title::after {content: ''; position: absolute; background: url("img/menu/box02_title03.png")top right no-repeat; width:514px; height: 65px; top: 36px; right: 20px; z-index: 10;}
#menu .box02 h3{position: relative; font-size: 25px; text-align: right; padding: 20px 20px 20px 0;}
#menu .box02 h3 .bigtxt{position: absolute; top: 20px; right: 20px; font-size: 40px; margin-top: 40px;}
#menu .box02 .inner01{margin: 60px 0 20px;}
#menu .box02 .end{padding: 20px}

/*voice*/
#voice .voice_item {box-sizing: border-box; width: 347px; margin-right: 20px;}
#voice .voice_item:nth-child(2n) {margin-right: 0;}
#voice .voice_item:nth-child(n + 3) {margin-top: 20px;}
#voice .img {box-sizing: border-box; border: 3px solid #000;}
#voice .img img {width: 100%; height: 173px; object-fit: cover;}
#voice .txt_box {box-sizing: border-box; background: url("img/voice/txt_bg.jpg")top left repeat; padding: 10px; line-height: 1; font-size: 14px;}
#voice h2 {font-size: 14px; line-height: 1.3;}
#voice .btn,#gallery .btn {box-sizing: border-box; border: 3px solid #000; width: 100%; background: url("img/voice/arrow.png")center right 20px no-repeat; background-color: #fff; line-height: 1; padding: 10px 0; font-size: 20px; margin-top: 20px;}
#voice_single .img {margin-top: 20px;}
#voice_single .img img {width: 100%; height: 440px; object-fit: cover;}
#voice_single .gallery_box {box-sizing: border-box; margin: 20px auto;}
#voice_single .title_box {font-size: 14px; line-height: 1; box-sizing: border-box; border-bottom: 2px solid #004ea2; padding-bottom: 5px; margin-bottom: 20px;}
#voice_single h2 {box-sizing: border-box; border-left: 5px solid #004ea2; padding-left: 10px; font-size: 20px;}
#voice_single .list a {box-sizing: border-box; width: 225px; margin-right: 20px;}
#voice_single .list a:nth-child(3n) {margin-right: 0;}
#voice_single .list a:nth-child(n + 4) {margin-top: 20px;}
#voice_single .list a img {width: 100%; height: 167px; object-fit: cover;}
#voice_single .txt_box {box-sizing: border-box; border: 3px solid #000; padding: 20px; background: #fff; font-size: 14px; line-height: 2; margin-bottom: 20px;}

/*gallery*/
#gallery .gallery_item {box-sizing: border-box; width: 347px; margin-right: 20px;}
#gallery .gallery_item:nth-child(2n) {margin-right: 0;}
#gallery .gallery_item:nth-child(n + 3) {margin-top: 20px;}
#gallery .over {box-sizing: border-box; border: 3px solid #000; position: relative; background: #004ea2;}
#gallery .img img {width: 100%; height: 198px; object-fit: cover;}
#gallery .price_txt {box-sizing: border-box; padding: 10px 0 5px; font-size: 25px; line-height: 1;}
#gallery .price_txt span {font-size: 40px;}
#gallery h2 {font-size: 14px; line-height: 1.3; margin: 16px 0;}
#gallery .icon {position: absolute; top: 0; left: 0; z-index: 10;}

/*blog*/
#blog .blog_area {box-sizing: border-box; border: 5px solid #004ea2; background: #fff; padding: 20px;}
#blog .blog_item {box-sizing: border-box; border-top: 1px solid #000; padding-top: 20px; margin-top: 20px; width: 100%;}
#blog .blog_item:nth-child(1) {margin-top: 0; padding-top: 0; border-top: none;}
#blog h2 {font-size: 18px; margin-top: 20px; line-height: 1;}
#blog .time {font-size: 16px; line-height: 1;}
#blog_single .txt_box {box-sizing: border-box; border: 5px solid #004ea2; font-size: 14px; line-height: 2; padding: 20px 20px 15px; margin: 20px auto;}
#blog_single .time {line-height: 1; margin-bottom: 10px;}
#blog .news_area {border: 5px solid #63b4cf;}




