@charset "UTF-8";

/*
Theme Name:  ZEAL
Theme URI: http://zeaplus.co.jp/
Description: ZEAL
Version: 1.1
Author: ZEALPLUS
Author URI: http://zeaplus.co.jp/	
*/


/*
===== CONTENTS ================================================================================

	Index:
  - Base Style
  - Layout
  
===============================================================================================
*/

@import url('https://fonts.googleapis.com/css?family=Poppins:300,400,500,600,700,800,900');


/* 1: Base Style Setting
----------------------------------------------------------------------------------------------*/

/* Base Setting
==========================================================*/

html { width: 100%; box-sizing: border-box; }
body { width: 100%; font: 16px/1.8 "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic",  Helvetica, Arial, sans-serif; margin:0; padding: 0; background: #fff; color: #000;  letter-spacing:0.8px; font-weight: 500; overflow-x: hidden; }
.bodyen { letter-spacing:0; line-height: 1.3; }
a { text-decoration: none; outline:none; color: #000; }
img { -ms-interpolation-mode: bicubic; vertical-align: bottom; max-width: 100%; height: auto;} 

h1.homeh1{ width: 999px; height: 999px; position: absolute; top: -999px; left: -999px; }

.centerposi { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%);  }
.centertate { position: absolute; top: 50%; -webkit-transform: translateY(-50%);transform: translateY(-50%); } 
.fn-n { font-weight: normal;}


/* common
==========================================================*/

.inner1300 { max-width: 1300px; width: 100%; margin: 0 auto; box-sizing: border-box;word-wrap: break-word;}
.inner1100 { max-width: 1100px; width: 100%; margin: 0 auto; box-sizing: border-box;word-wrap: break-word;}
.inner1000 { max-width: 1000px; width: 100%; margin: 0 auto; box-sizing: border-box;word-wrap: break-word;}
.inner800 { max-width: 800px; width: calc( 100% - 40px); margin: 0 auto; box-sizing: border-box;word-wrap: break-word;}
.bg-g { background: #F2F2F2;}
.bg-w { background: #fff;}
.tellink { cursor: text; }
.pb140 { padding-bottom: 140px !important;}

/* header
==========================================================*/
header { }
.headwrap { width: 100%; height: 80px; }
.headwrap .col-l { padding-top: 10px; }
.bodyen .headwrap .col-l { padding-top: 7px; }
.headwrap .col-r { }
.headnavwrap { }
.headnavul { font-size: 15px; line-height: 15px; float: left; padding-top: 30px; margin-right: 30px; }
.headnavul li { float: left; margin-left: 25px; padding-left: 25px; border-left: 1px solid #bbb; }
.headnavul li a { color: #0285D4; }
.headnavul li label { color: #0285D4; cursor: pointer; -webkit-transition:all .3s; transition:all .3s; }
.headnavul li label:hover { -webkit-opacity: 0.6; opacity: 0.6; }
.headnavul li img { padding-right: 10px;}
.langul { font-size: 12px; float: right; padding-top: 25px; }
.langul li { width: 60px; height: 25px; line-height: 25px; float: left; }
.langul li a { display: block; background: #E5E5E5; color: #333; font-weight: bold; text-align: center; }
.langul li.select { }
.langul li.select a { pointer-events: none; background: #0285D4; color: #fff; }

@media screen and (max-width: 1120px) {
.headwrap { padding: 0 15px;}
}

@media screen and (max-width: 960px) {
.headwrap { height: auto;}
.headwrap .col-l { float: none; text-align: center; }
.headwrap .col-r { float: none; }
.headnavul { padding: 20px 0; text-align: center; width: 100%; }
.headnavul li { float: none; display: inline-block; }
.headnavul li:last-child { border-right: 1px solid #bbb; padding-right: 25px;}
.langul { position: absolute; top: 0; right: 15px; }
}


/* Google検索
==========================================================*/

.gsc-control-cse { background-color: #fff !important; }
#gsc-iw-id1 { padding: 5px !important;}
.gscb_a { color: #ccc !important;}
.gsc-search-button { border: none !important; background: #ccc !important; vertical-align: middle !important; }
.gsc-results-wrapper-overlay { width: 100% !important; box-sizing: border-box !important; left: 0 !important; top: 0 !important; height: 80vh !important; }



/* dropmenu
==========================================================*/

@media screen and (min-width: 751px) {
#menu { display: block !important;}
nav { background:#0285D4; width: 100%; height: 70px; position: relative; z-index: 2;  }
.navwrap { width: 25%; height: 70px; box-sizing: border-box; float: left; border-left: 1px solid #fff; text-align: center; }
.bodyen .navwrap { width: 33.3333%; }
.navwrap.last { border-right: 1px solid #fff; }
.navwrap a { display: block; color: #fff; }

.navttl { color: #fff; height: 70px; line-height: 70px; font-size: 18px; text-align: center; letter-spacing: 0.05em; }
.navttl:hover { }
.navttl .navttlin { font-weight: bold; }
.navttl .navttlin:hover { background:#0369BA; transition: all 300ms 0s ease; }
.navttl #spopenbtn01:hover a,
.navttl #spopenbtn03:hover a { cursor: default;}
.navttlin span { position: relative;}
.navttlin span:after { position: absolute; content: ""; width: 12px; height: 8px; background: url(../img/common/arrow-down.png) no-repeat center; background-size: 12px 8px; top:  5px; right: -30px; }
.arrow-down { position: absolute; height: 8px; top: -55px; right: -30px; }
.block01 { display: none; cursor: pointer; }
.block01 a { color: #4c4c4c; }
.navttl:hover .block01 { display: block !important; background: #f7f7f7;
opacity: 1; animation-duration: 0.5s; animation-name: fade-in; -moz-animation-duration: 0.5s; -moz-animation-name: fade-in; -webkit-animation-duration: 0.5s; -webkit-animation-name: fade-in; }
.navttl:hover .block01 > li { box-sizing: border-box; line-height: 1.2; font-size: 15px; text-align: left; border: 1px solid #ccc; border-top: none; }
.navttl:hover .block01 > li:hover { background: #e8e8e8; transition: all 300ms 0s ease; }
.navttl:hover .block01 > li a { padding: 15px; padding-right: 10px; }
.block02 { display: none; }
.navttl02 { box-sizing: border-box; line-height: 1.2; font-size: 15px; text-align: left; border-top: 1px solid #fff; position: relative; }
.navttl02 .navttl02in { padding: 15px; padding-right: 10px; position: relative; background: #0285D4; }
.plus { position: absolute; right: 15px; top: 10px; }
.window { position: absolute; right: 15px; top: 15px; }
.navttl02:hover { cursor: default; }
.navttl02:hover .block02 { display: block !important; position: absolute; top: -1px; left: 100%; width: 100%;
opacity: 1; animation-duration: 0.5s; animation-name: fade-in; -moz-animation-duration: 0.5s; -moz-animation-name: fade-in; -webkit-animation-duration: 0.5s; -webkit-animation-name: fade-in; }
.navttl02:hover .block02 > li { font-weight: normal; border: 1px solid #ccc; background:#f7f7f7; border-bottom: none; width: calc(100% + 1px); }
.navttl02:hover .block02 > li:hover { background: #e8e8e8; transition: all 300ms 0s ease; }
.navttl02:hover .block02 > li:last-child { border-bottom: 1px solid #ccc;}
.navttl02:hover .block02 > li a { padding: 15px; padding-right: 10px; color: #4c4c4c; display: block; }
}

@media screen and (max-width: 1100px) {
.navttlin span:after { top:  5px; right: -20px; }
.navwrap02 .block01 { width: 150%; }
.navttl02:hover .block02 > li { width: 100%; }
}

	@keyframes fade-in {
	0% { display: none; opacity: 0; }
	1% { display: block; opacity: 0; }
	100% { display: block; opacity: 1; }
	}
	@-moz-keyframes fade-in {
	0% { display: none; opacity: 0; }
	1% { display: block; opacity: 0; }
	100% { display: block; opacity: 1; }
	}
	@-webkit-keyframes fade-in {
	0% { display: none; opacity: 0; }
	1% { display: block; opacity: 0; }
	100% { display: block; opacity: 1; }
	}


/** slick
===================================*/
#sliderslick{  margin:0 auto 30px;}
#sliderslick li { line-height:1; margin: 0; }
#sliderslick li img{ }

/* Dots */
.slick-dotted.slick-slider
{ margin-bottom: 0px; }
.slick-dots { position: absolute; bottom: -35px; display: block; width: 100%; padding: 0; margin: 0; list-style: none; text-align: center; }
.slick-dots li { position: relative; display: inline-block; width: 10px; height: 10px; margin: 0 5px !important; padding: 0; cursor: pointer; }
.slick-slide{opacity: 0.5; }
.slick-slide.slick-current{ opacity: 1; }
.slick-dots li button { font-size: 0; line-height: 0; display: block; width: 10px; height: 10px;
padding: 0px; cursor: pointer; color: transparent;  border: 0; outline: none; background: transparent; }
.slick-dots li button:before { font-family: 'slick'; font-size: 12px; line-height: 10px; position: absolute; top: 0; left: 0;
width: 10px; height:10px; content: '•'; text-align: center; opacity: 1; color: #BFBFBF; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.slick-dots li.slick-active button:before { opacity: 1; color: #0285D4; }
.slick-prev,.slick-next { z-index:1; position: absolute; top: calc(50% - 21px); width: 23px; height: 42px; cursor: pointer; }
.slick-prev { left:-5%; left : calc((100vw - 1200px)/2); background: url(../img/index/prev.png) center no-repeat !important; }
[dir='rtl'] .slick-prev { right: 5%; right:-webkit-calc((100vw - 1200px)/2); right : calc((100vw - 1106px)/2); left: auto; }
.slick-next { right: 5%; right : -webkit-calc((100vw - 1200px)/2) ;  right : calc((100vw - 1200px)/2);
background: url(../img/index/next.png) center center no-repeat !important; }
[dir='rtl'] .slick-next { right: auto; left: 5%; left :-webkit-calc((100vw - 1200px)/2);  left :calc((100vw - 1200px)/2); }
.slick-prev:hover,
.slick-next:hover{ opacity:0.6; -moz-transition: all .3s; -webkit-transition: all .3s; transition: all .3s; }

.slick-prev:before,
[dir='rtl'] .slick-prev:before,
.slick-next:before,
[dir='rtl'] .slick-next:before
{content: '';}

@media screen and (max-width: 1100px) {
#sliderslick li { line-height:1; margin: 0; }
#sliderslick li img{ width:100vw; height:auto; }
.slick-dots li{ margin: 0 0px; padding: 0 5px; }
}


/* index
==========================================================*/

.mainwrap { }
#sliderslick { }
#sliderslick li { position: relative; }
.mainimg { max-width: 1100px; width: 100vw; height: 550px; }
.mainover { top: 0; left: 0; }
.mainwrap .mainovertxt { z-index: 2; top: 40px; left: 40px; font-size: 45px; line-height: 1.3; color:#0285D4; font-weight: bold; width: 280px; }
.bodyen .mainwrap .mainovertxt { font-size: 40px; word-wrap: break-word; }

@media screen and (max-width: 1100px) {
.mainimg { width: 100vw; height: 40vh; }
.mainover img { width: 100vw; height: 40vh !important; }
}


.conceptwrap { margin: 80px 0; }
.conceptwrap .col-l { width: calc(100% - 520px); }
.conceptwrap .col-r { width: 500px; }
.conceptttl { font-size: 50px; line-height: 1.2; font-weight: bold; margin: 40px 0 30px; }
.bodyen .conceptttl { font-size: 40px; line-height: 1.2; margin-bottom: 30px; }
.concepttxt { font-size: 18px; line-height: 2; }
.bodyen .concepttxt { line-height: 1.6; }

@media screen and (max-width: 1320px) {
.conceptwrap { padding: 0 30px; }
.conceptttl { font-size: 50px; font-weight: bold; margin: 20px 0 30px; }
.conceptwrap .col-l { width: 58%; }
.conceptwrap .col-r { width: 38%; }
.sp-none-1320 br { display: none; }
}
@media screen and (max-width: 960px) {
.conceptttl { font-size: 45px; font-weight: bold; margin: 20px 0 10px; }
}
@media screen and (max-width:800px) {
.conceptwrap .col-l { float: none; width: 100%; margin-bottom: 40px; }
.conceptwrap .col-r { float: none; width: 60%; margin: 0 auto; }
}


/*----- ind-activity-----*/
.indactwrap { width: 100%; text-align: center; }
.indactmidwrap { width: 20%; height: 250px; float: left; background: #0285D4; color: #fff; }
.indactmidwrap .centerposi { width: 92%;}
.indactttl { font-size: 26px; font-weight: bold; }
.indactsub { font-size: 12px; }
	
.indactcat { width: 20%; float: left; position: relative; }
.indcatin { height: 250px; width: 100%; box-sizing: border-box; border: 1px solid #D9D9D9; border-right: none; text-align: center; -webkit-transition:all .3s; transition:all .3s;}
.indcatin a { display: block; height: 250px; }
.indcatin:hover { -webkit-opacity: 0.6; opacity: 0.6; }
.indcatimg { margin: 40px 0 30px; }
.indacttxt { padding: 0 5px; }
.bodyen .indacttxt { padding: 0 15px; }
.indcatin01 { border-bottom: none; cursor: pointer; border-bottom: 5px solid #0285D4; }
.indcatwrap2:hover .indcatin01 { border-bottom: none; border-bottom: 1px solid #D9D9D9; }
.indactcat:hover .indcatin { border-bottom: none; cursor: pointer; border-bottom: 5px solid #0285D4; }
.indactcatblock { display: none; position: absolute; top: 250px; width: 500%; background: #fff; height: 200px; box-sizing: border-box; }
.indactcatblock:hover { }
.indactcatblock01 { display: block; }
.indactcat:hover .indactcatblock{ display: block; transition: all 300ms 0s ease; }
.indactcatblock01 { left: -100%; }
.indactcatblock02 { left: -200%; }
.indactcatblock03 { left: -300%; }
.indactcatblock04 { left: -400%; }
.indactulwrap { max-width: 1380px; width: 100%; margin: 0 auto; }
.indactul { width: 100%; font-size: 0; margin-left: -1%; height: 200px; box-sizing: border-box; padding-top: 60px; }
.indactul li { margin-left: 1%; margin-bottom: 10px !important; box-sizing: border-box; font-size: 15px; min-height: 60px; display: inline-block; }
.indactul01 li { width: 30%; }
.indactul02 li { width: 30%; }
.indactul03 li { width: 24%; }
.indactul04 li { width: 24%; }
.indactul05 li { width: 18.5%; }
.indactul li .centerposi { width: 100%; box-sizing: border-box; padding: 0 5px; }
.indactul li a { display: block; color: #0285D4; font-weight: bold; line-height: 1.2; box-sizing: border-box; min-height: 60px; border: 1px solid #0285D4; position: relative; }
.indactul li a:after { content: ""; position: absolute; right: 5px; bottom: 5px; width: 0; height: 0;
border-style: solid; border-width: 0 0 10px 10px; border-color: transparent transparent #0285D4 transparent; }

.bodyen .indactul li  { min-height: 65px; }
.bodyen .indactul li a { min-height: 65px;}

@media screen and (max-width: 1380px) {
.indactul01 li { width: 45%;}
.indactul02 li { width: 45%;}
.indactul03 li { width: 30%;}
.indactul04 li { width: 45%;}
    .indactul05,.indactul04 { padding-top: 35px;}
.indactul05 li { width: 30%;}
}

@media screen and (max-width: 1100px) {
.indcatin br { display: none; }
}

/*----- ind-news -----*/
.indnewswrap { padding: 200px 0 120px; }
.indttlwrap { text-align: center; color: #0285D4; margin: 100px auto 40px; }
.indmid { font-size: 32px; font-weight: bold;}
.indsub { font-size: 16px; }
.indnewsulwrap { width: 100%; }

.indnewsul { margin-left: 0.5%; }
.indnewsli { float: left; width: 32.5%; margin-left: 0.5%; background: #fff; }
.indnewsttl{ height: 55px; line-height: 55px; text-align: center; color: #fff; font-weight: bold; position: relative; }
.indnewsttl:after { content: ""; position: absolute; width: 0; height: 0; top: 100%; left: calc(50% - 4px);
border-style: solid; border-width: 8px 7.5px 0 7.5px; border-color: #0369BA transparent transparent transparent; }
.indnewsttl02:after { border-color: #0285D4 transparent transparent transparent; }
.indnewsttl03:after { border-color: #009688 transparent transparent transparent; }
.indnewsttl01 { background: #0369BA; }
.indnewsttl02 { background: #0285D4; }
.indnewsttl03 { background: #009688; }
.indnewsulin { padding: 25px 0 50px; }
.indnewsulin li { padding-bottom: 25px; margin: 0 25px 25px; border-bottom: 1px dotted #000; line-height: 1.6; }
.indnewsulin li:last-child { padding-bottom: 0; margin-bottom: 0; border-bottom: none;}
.indnewsli .indnewsulin li .indnewsdate { color: #0369BA; font-weight: bold; padding-bottom: 10px; }
.indnewsli02 .indnewsulin li .indnewsdate { color: #0285D4; }
.indnewsli03 .indnewsulin li .indnewsdate { color: #009688; }
.indnewsulin li a { text-decoration: underline; display: block; }
.indnewsulin li a:hover { text-decoration: none; }
.indnewsall { text-align: right; margin-right: 25px; font-weight: normal; padding-bottom: 25px; }
.indnewsall a { color: #0369BA; text-decoration: underline; font-weight: bold; }
.indnewsall a:hover { text-decoration: none; }
.indnewsli02 .indnewsall a { color: #0285D4; }
.indnewsli03 .indnewsall a { color: #009688; }
.indnewsall span { color: #0369BA; padding-left: 10px;}
.indnewsli02 .indnewsall  span { color: #0285D4; }
.indnewsli03 .indnewsall  span { color: #009688; }



/* footer
==========================================================*/

footer { background: #0285D4; color: #fff; width: 100%; position: relative; }
.pagetop { position: absolute; left: 50%; -webkit-transform: translateX(-50%);transform: translateX(-50%); top: -50px;  }

.indfoottopwrap { height: 80px; padding-top: 20px; background: #fff; }
.btn-recruit { float: none; width: 130px; margin: 0 auto; text-align: center; } 
.btn-recruit a { display: block; color: #0285D4; border: 1px solid #0285D4; height: 40px; line-height: 40px; } 

footer a { color: #fff;}
.foottop { margin-left: -20px; font-size: 13px; padding: 40px 0; }
.footmenuwrap { width: 200px; float: left; margin-left: 20px; }
.footmenuwrap2x { width: 660px; }
.footmenu2xin { margin-left: -20px; }
.footmenuwrap .col-l { margin-left: 20px;}
.bodyen .footmenuwrap .col-l { margin-left: 20px; width: calc(50% - 20px); }
.footmenuttl { font-size: 16px; font-weight: bold; padding-bottom: 5px; margin-bottom: 20px; border-bottom: 1px solid #fff; }
.footmenuttl a { display: block;}
.footmenuttl span { position: relative; }
.footmenuttl span:after { content: ""; position: absolute; width: 8px; height: 12px; background:url(../img/common/arrow-right.png) no-repeat center; background-size: 8px 12px; top: 3px; right: -1em;}
.footmenumid { font-size: 14px; font-weight: bold; }
.bodyen .footmenumid { margin-bottom: 10px; }
.footmenuul { margin-bottom: 20px; }
.footmenuul li { padding-left: 1em; position: relative; width: 100%; }
.bodyen .footmenuul li { margin-bottom: 5px;} 
.footmenuul li a {}
.footmenuul li:after { content: "-"; position: absolute; top: 0; left: 0; }

.indbnrul { margin-left: -4px; margin-bottom: 40px; text-align: center; font-size:0; }
.indbnrul li { display: inline-block; margin-left: 4px; margin-bottom: 4px; }
.footbtm { background: #0369BA; padding: 40px 0; }
.footaccessdl01 { margin-right: 60px; }
.footaccessdl dt { font-size: 14px; font-weight: bold; float: left; margin-right: 20px; }
.footaccessdl dd { font-size: 13px; float: left; }
.copyright { position: absolute; font-size: 10px; color: #fff; bottom: 0; right: 0; }

.bodyen .footaccessdl dt { float: none; margin-bottom: 10px; }


@media screen and (max-width: 1140px) {
.foottop { padding: 40px 20px; }
.footmenuwrap { width: 160px; float: left; margin-left: 20px; }
.footmenuwrap2x { width: calc(100% - 400px); }
.footmenuwrap .col-l { width: auto; }

.footbtm .inner1100 { padding: 0 20px; }
.footaccessdl01 { margin-right: 40px; }
.copyright { position: inherit; font-size: 10px; color: #fff; text-align: right; padding-top: 20px; }
}

@media screen and (max-width: 960px) {
.footaccessdl dt { font-size: 14px; font-weight: bold; float: none; margin-right: 20px; }
.footaccessdl dd { font-size: 13px; float: none; }
}



/* kasou
==========================================================*/

.pannavwrap { background: #F7F7F7; height: 35px; line-height: 35px; width: 100%; box-sizing: border-box; padding: 0 15px; color: #4C4C4C; }
.pannavul { font-size: 14px; }
.pannavul li { float: left; position: relative; padding-right: 30px; margin-right: 15px; }
.pannavul li:after { content: "＞"; position: absolute; top: 0; right: 0;}
.pannavul li:last-child:after { content: none; }
.pannavul li a { text-decoration: underline; color: #4C4C4C; }
.pannavul li a:hover { text-decoration: none; }

.ttlwrap { min-height: 180px; text-align: center; color: #0285D4; background: #fff; position: relative; border-bottom: 1px solid #E5E5E5; }
.ttlwrap .centerposi { width: calc(100% - 250px); line-height: 1.4; }
.bodyen .ttlwrap .centerposi { width: calc(100% - 350px); }
.ttlwrap:before { content: ""; position: absolute; width: 80px; height: 100%; background:url(../img/common/ttlleft.png) no-repeat center; background-size: 80px 100%; top: 0; left: 0; }
.ttlwrap:after { content: ""; position: absolute; width: 80px; height: 100%; background:url(../img/common/ttlright.png) no-repeat center; background-size: 80px 100%; top: 0; right: 0; }
@media screen and (max-width: 980px) {
.ttlwrap:before { width: 60px;background-size: 60px 100%; }
.ttlwrap:after { width: 60px; height: 100%; background-size: 60px 100%; }
}

.ttlwrap .ttlin { width: 100%; height: 100%; min-height: 180px; position: relative; }
.ttlwrap .ttlin:after { content: ""; width: 120px; height: 2px; background: #0285D4; position: absolute; bottom: -1px; left: calc(50% - 60px);}
.ttlwrap .ttl { font-size: 40px; line-height: 1; font-weight: bold; letter-spacing: 0.1em; }

.kasouwrap { padding-top: 100px; }

.page-about-list .listdescwrap { padding-bottom: 60px; }
.page-about-list .listdescwrap02 { padding-top: 80px; }
.listdescwrap a { text-decoration: underline; }
.listdescwrap a:hover { text-decoration: none; }
.listdescmid { font-size: 28px; font-weight: bold; text-align: center; padding-bottom: 20px; border-bottom: 1px solid #000; text-align: center; margin-bottom: 30px; }
.listdesctxt { font-size: 18px; }
.listbnrwrap { padding-bottom: 60px; }
.listbnrwrap02 { padding-bottom: 60px; }
.listbnrul { text-align: center; padding: 60px 0; }
.listbnrul li { display: inline-block; width: 260px; margin-left: 10px; margin-bottom: 10px; }
.listbnrul li a { display: block; border: 1px solid #0285D4; background: #fff; height: 60px; line-height: 60px; color: #0285D4; font-weight: bold; text-align: center; letter-spacing: 0; position: relative; box-sizing: border-box;}
.listbnrul li a:after { content: ""; position: absolute; bottom: 5px; right: 5px; 
width: 0;height: 0; border-style: solid; border-width: 0 0 10px 10px;
border-color: transparent transparent #0285D4 transparent; }


/* news-list */
.newslistwrap {}
.newslistttlul { margin-left: -10px; margin-bottom: 60px; }
.newslistttlul li { width: 360px; float: left; margin-left: 10px; box-sizing: border-box; text-align: center; }
.newslistttlul li a { display: block; background: #fff; height: 55px; line-height: 55px; font-size: 20px; font-weight: bold; color: #0285D4; border: 1px solid #0285D4; }
.newslistttlul li a:hover { background: #0285D4; color: #fff; transition: all 300ms 0s ease; }
.page-news01 li.newslistttlli01 a,
.page-news02 li.newslistttlli02 a,
.page-news03 li.newslistttlli03 a {background: #0285D4; color: #fff; pointer-events: none; position: relative; }
.page-news01 li.newslistttlli01 a:after,
.page-news02 li.newslistttlli02 a:after,
.page-news03 li.newslistttlli03 a:after { content: ""; position: absolute; width: 0; height: 0; top: 100%; left: calc(50% - 7px);
border-style: solid; border-width: 8px 7px 0 7px; border-color: #0285D4 transparent transparent transparent; }
.newslistttlul li.select a { color: #fff; pointer-events: none; }

.newslistdl { }
.newslistdl dt { float: left; clear: left; font-weight: bold; color: #0285D4; }
.newslistdl dd { padding-left: 130px; margin-bottom: 30px; padding-bottom: 30px; border-bottom: 1px dotted #000; }
.newslistdl dd a { text-decoration: underline; }
.newslistdl dd a:hover { text-decoration: none; }
.newslistdl dd:last-child { margin-bottom: 40px; }

.pagerwrap { float: right; }
.pagerul { margin-left: -5px; }
.pagerul li { float: left; width: 40px; height: 40px; line-height: 40px; text-align: center; margin-left: 5px;  }
.pagerul li a { background: #fff; font-weight: bold; display: block; color: #0285D4; }
.pagerul li.select a { color: #fff; pointer-events: none; background: #0285D4; }

@media screen and (max-width: 1120px) {
.newslistttlul { margin-left: 0; margin-bottom: 60px; }
.newslistttlul li { width: 32%; float: left; margin-left: 1%; box-sizing: border-box; text-align: center; }
.newslistdl { padding: 0 20px; }
.pagerwrap { float: right; margin-right: 20px; }
}



/* 投稿エリア */
.page-cat-detail h1,
.page-news-detail h1 { position: inherit; height: auto; top: auto; left: auto; width: 100%; height: auto; font-size: 26px; font-weight: bold; line-height: 1.4; padding: 40px 0 60px; max-width: 800px; margin: 0 auto; width: calc(100% - 140px); }
.page-tomo-detail h1,
.page-mokuteki h1 { position: inherit; height: auto; top: auto; left: auto; width: 100%; height: auto; font-size: 26px; font-weight: bold; line-height: 1.4; padding: 70px 0; max-width: 800px; margin: 0 auto; width: calc(100% - 140px); }
.ttldate { color: #4C4C4C; font-size: 14px; position: absolute; bottom: 10px; position: absolute;  left: 50%; -webkit-transform: translateX(-50%);transform: translateX(-50%); }
.page-about h1 { height: auto; font-size: 40px; font-weight: bold; margin-top: 0; }
.bodyen .page-cat h1 {font-size: 30px; }
.page-about .ttldate { display: none; }
.postwrap.bg-w { padding: 80px 0; }
.postwrap h2,
.listdescwrap h2 { font-size: 20px; font-weight: bold; color: #0285D4; padding-bottom: 10px; margin-bottom: 30px; border-bottom: 1px solid #B2B2B2; position: relative; }
.postwrap h2:after,
.listdescwrap h2:after { position: absolute; content: ""; width: 100px; height: 1px; bottom: -1px; left: 0; background: #0285D4; }
.postwrap  h3 { font-weight: bold; font-size: 18px; margin-bottom: 10px; margin-top: 30px; }
.postwrap a { text-decoration: underline; }
.postwrap a:hover { text-decoration: none; }
.postwrap a.btn { display: block; border: 2px solid #ccc; text-decoration: none; text-align: center; color: #4C4C4C; font-weight: bold; height: 50px; line-height: 50px; position: relative; margin-bottom: 10px; }
.postwrap a.btn:after { position: absolute; content: ""; width: 0; height: 0; right: 5px; bottom: 5px;
border-style: solid; border-width: 0 0 10px 10px; border-color: transparent transparent #ccc transparent; }

.postwrap p { margin-bottom: 30px;}
.postwrap ul,ol { margin-bottom: 30px; }
.postwrap ul li,
.postwrap ol li,
.listdescwrap ul li { padding-left: 1.2em; position: relative; }
.postwrap ul li:after,
.postwrap ol li:after,
.listdescwrap ul li:after { content: "●"; color: #0285D4; position: absolute; top: 0; left: 0; }
.postwrap table { width: 100%; border: 1px solid #ccc; border-bottom: none; border-right: none; margin-bottom: 20px; }
.postwrap table th { border-bottom: 1px solid #ccc; border-right: 1px solid #ccc; width: 25%; padding: 15px 20px; background: #F2F2F2; font-weight: bold; }
.postwrap table td { border-bottom: 1px solid #ccc; border-right: 1px solid #ccc; padding: 15px 20px; }
.postwrap table td a { color: #0285D4; font-weight: bold; text-decoration: underline;}
.postwrap table td a:hover { text-decoration: none; }
.postwrap strong { font-weight: bold !important; }
.postwrap em { font-style: italic !important; }
.postwrap blockquote { margin-left: 1em !important; }

.table3col { width: 100%; border: 1px solid #ccc; margin-bottom: 20px; }
.table3col td { border-right: 1px solid #ccc; }

.box-maru-b { padding: 0.5em 1em; margin: 2em 0; border: solid 3px #6091d3; border-radius: 10px; }
.box-maru-b p { margin: 0; padding: 0; }

.ol.kakko1 { margin-left: 3.5em; }
.ol.kakko1 li { list-style-type: none; counter-increment: cnt; }
.ol.kakko1 li:before { content: "(" counter(cnt) ")"; display:inline-block; margin-left:-3em; width: 3em; }

.delete-marker { list-style: none; padding-left: 0; }


@media screen and (max-width: 1120px) {
.postwrap.bg-w { width: calc( 100% - 40px); }
}



/* activity-top */

.actwrap { padding-bottom: 200px; }
.actblock { padding-bottom: 60px; margin-bottom: 60px; border-bottom: 1px dotted #000; }
.actmidwrap { float: left; width: 140px; text-align: center; padding-right: 20px; }
.bodyen .actmidwrap { float: left; width: 210px; text-align: center; padding-right: 20px; }
.actmidwrap a { display: block; width: 100%; height: 100%; }
.actmidwrap .actimg { margin-bottom: 15px;}
.actmidwrap .actmid { }
.actulwrap { float: right; width: calc(100% - 160px); }
.bodyen .actulwrap { float: right; width: calc(100% - 230px); }
.actul { padding-top: 30px; }
.actul li { width: 270px; float: left; margin-left: 10px; margin-bottom: 10px; }
.bodyen .actul li { width: 420px; float: left; margin-left: 10px; margin-bottom: 10px; }
.bodyen .actul li .centerposi { width: 100%; }
.actul li a { display: block; border: 1px solid #0285D4; background: #fff; height: 60px; color: #0285D4; font-weight: bold; text-align: center; letter-spacing: 0; position: relative; box-sizing: border-box; padding-top: 20px; line-height: 1.3; }
.actul li a:after { content: ""; position: absolute; bottom: 5px; right: 5px; 
width: 0;height: 0; border-style: solid; border-width: 0 0 10px 10px;
border-color: transparent transparent #0285D4 transparent; }
.actul01 { padding-top: 0; }
.actul02 li a,
.actul03 li a { display: block; border: 1px solid #0285D4; background: #fff; height: 80px; color: #0285D4; font-weight: bold; text-align: center; letter-spacing: 0; position: relative; box-sizing: border-box;}
.actul02 li.ptother a,
.actul03 li.ptother a { padding-top: 30px;}
.actul04 { padding-top: 20px; }
.bodyen .actul li a { height: 80px; }

@media screen and (max-width: 1120px) {
.actwrap { width: calc(100% - 40px); }
}



/* activity-list */
.ttlbtm,
h2.cdmttl { font-size: 40px; font-weight: bold; }
.catlistwrap { padding-top: 10px;}
.catlistmid { background: #0285D4; color: #fff; font-weight: bold; font-size: 20px; line-height: 55px; height: 55px; text-align: center; position: relative; margin: 80px auto 50px; }
.catlistmid:after { content: ""; position: absolute; width: 0; height: 0; top: 100%; left: calc(50% - 7px);
border-style: solid; border-width: 8px 7px 0 7px; border-color: #0285D4 transparent transparent transparent; }
.page-cat .pagerul li a,
.page-tomo .pagerul li a { background: #F7F7F7; font-weight: bold; display: block;  color: #0285D4; }
.page-cat .pagerul li.select a,
.page-tomo .pagerul li.select a { background: #0285D4; color: #fff; }

@media screen and (max-width: 1120px) {
.catlistmid { width: calc(100% - 40px); }	
}


/* activity-detail */

.page-cat h1 span,
.page-cat h2.cdmttl span,
.ttlbtm span { position: relative; }
.page-cat h1 span:after,
.page-cat h2.cdmttl span:after{ position: absolute; content: ""; width: 50px; height: 50px; top: 10px; left: -80px; }
.page-cat .ttlbtm span:after  { position: absolute; content: ""; width: 50px; height: 50px; top: 0; left: -80px; }
.bodyen .page-cat .ttlbtm span:after  { position: absolute; content: ""; width: 50px; height: 50px; top: 0; left: -120px; }
.page-cat01 h1 span:after,
.page-cat01 .ttlbtm span:after,
.page-cat01 h2.cdmttl span:after { background:url(../img/common/actico01.png) no-repeat center; background-size: 50px 50px; }
.page-cat02 h1 span:after,
.page-cat02 .ttlbtm span:after { background:url(../img/common/actico02.png) no-repeat center; background-size: 50px 50px; }
.page-cat03 h1 span:after,
.page-cat03 .ttlbtm span:after { background:url(../img/common/actico03.png) no-repeat center; background-size: 50px 50px; }
.page-cat04 h1 span:after,
.page-cat04 .ttlbtm span:after { background:url(../img/common/actico04.png) no-repeat center; background-size: 50px 50px; }



@media screen and (max-width: 1100px) {
.page-cat-detail h1 { max-width: 600px; font-size: 24px; line-height: 1.3; }
.page-cat01 h1 span:after,
.page-cat02 h1 span:after,
.page-cat03 h1 span:after,
.page-cat04 h1 span:after,
.page-cat04 h2.cdmttl span:after { background-size: 40px 40px; }
}

/* cdm */
.cdmul { margin-left: -10px; margin-bottom: 60px; }
.cdmul li { width: 360px; float: left; margin-left: 10px; box-sizing: border-box; text-align: center; position: relative; }
.cdmul li a { display: block; background: #fff; color: #0285D4; height: 55px; line-height: 55px; font-size: 20px; font-weight: bold; border: 1px solid #0285D4; }
.cdmul li.select a { background: #0285D4; color: #fff; pointer-events: none; }
.cdmul li.select:after { content: ""; position: absolute; width: 0; height: 0; top: 100%; left: calc(50% - 7px);
border-style: solid; border-width: 8px 7px 0 7px; border-color: #0285D4 transparent transparent transparent; }

.cdmol { margin-bottom: 60px; }
.cdmol li { display: inline-block; position: relative; padding-right: 1.5em; }
.cdmol li:after { content: "／"; width: 1em; height: 1em; position: absolute; top: 0; right: 2px; color: #0285D4; }
.cdmol li:last-child:after { display: none;}
.cdmol li a { color: #0285D4; text-decoration: underline; font-weight: bold; }
.cdmol li a:hover { text-decoration: none; }

.cdmtable { width: 100%; border: 1px solid #ccc; border-bottom: none; border-right: none; line-height: 1.5; font-size: 95%; margin-bottom: 20px; }
.cdmtable th { width: auto; padding: 20px 15px; border-bottom: 1px solid #ccc; border-right: 1px solid #ccc; font-weight: normal; background: #f2f2f2; font-weight: bold; }
.cdmtable td { padding: 20px 15px; border-bottom: 1px solid #ccc; border-right: 1px solid #ccc; width: 18%; font-weight: normal; }
.cdmtable td.w2x { width: 35%; }
.cdmtable td.cdm_tag, .cdmtable th.cdm_tag { width: 20%; }
.cdmtable td.cdm_cate, .cdmtable th.cdm_cate { width: 20%; }
.cdmtable td.cdm_year, .cdmtable th.cdm_year { width: 10%; }
.cdmtable td a { font-weight: bold; color: #0285D4; text-decoration: underline; }
.cdmtable td a:hover { text-decoration: none; }
.cdmtable thead th,
.cdmtable thead td { font-weight: bold; }

@media screen and (max-width: 1120px) {
.page-cat01-04 .inner1100 { width: calc(100% - 40px); }
.cdmul { }
.cdmul li { width: 32.3%; float: left; margin-left: 1%; box-sizing: border-box; text-align: center; }
.cdmtable { font-size: 90%; }
.cdmtable th { }
.cdmtable td { width: 20%; }
.cdmtable td.cdm_year, .cdmtable th.cdm_year { width: 11%; }
.cdmtable td.w2x { width: 34%; }
}




/* wordpressコンタクトフォーム用 */

.must{
	color: #fff;
	margin-right: 10px;
	padding: 6px 10px;
	background: #BD1D00;
	border-radius: 20px;
}

/* 任意マーク */
.free {
	color: #fff;
	margin-right: 10px;
	padding: 6px 10px;
	background: #424242;
	border-radius: 20px;
}

/* 項目名を太字にする */
.wpcf7-form p {
	font-weight: 600;
}

/* 入力項目を見やすくする */
input.wpcf7-form-control.wpcf7-text,
textarea.wpcf7-form-control.wpcf7-textarea {
	width: 100%; box-sizing: border-box;
	padding: 10px 15px;
	margin-right: 10px;
	margin-top: 10px;
	border: 1px solid #d0d5d8;
	border-radius: 3px;
}
textarea.wpcf7-form-control.wpcf7-textarea {
	height: 200px;
}


/* 送信ボタンを見やすくする */
input.wpcf7-submit {
	width: 30%;
	margin-left: 35%;
	height: 80px;
	background: #0285D4;
	color: #fff;
	font-size: 20px;
	font-weight: 600; /*-webkit-transition:all .3s; transition:all .3s;*/
    cursor: pointer; 
	border:none;
    /*position: absolute; left: 50%; -webkit-transform: translateX(-50%);transform: translateX(-50%);*/
}

/*input.wpcf7-submit:hover { -webkit-opacity: 0.6; opacity: 0.6; }*/

/* エラーメッセージを見やすくする */
span.wpcf7-not-valid-tip,
.wpcf7-response-output.wpcf7-validation-errors {
	color: red;
	font-weight: 600; 
}
.wpcf7-response-output.wpcf7-validation-errors {border: 1px solid #ff0000 !important;}
div.wpcf7-response-output {
	border: 1px solid #ff0000 !important;
}

div.wpcf7-mail-sent-ok {
	border: 1px solid #398f14 !important;
}

div.wpcf7-mail-sent-ng,
div.wpcf7-aborted {
	border: 1px solid #ff0000 !important;
}

div.wpcf7-spam-blocked {
	border: 1px solid #ffa500 !important;
}

div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing {
	border: 1px solid #ff0000 !important;
}
