@charset "UTF-8";

/* --------------------------------------------------
 Block
-------------------------------------------------- */
/* Common Block --------------- */
.commBlc,
.upCommBlc{
max-width:1000px;
padding:0 2%;
margin:0 auto;
position:relative;
}

.upCommBlc{
max-width:1200px;
}

.boxComm{
padding-top:7%;
padding-bottom:7%;
}

.minBoxComm{
padding-top:4%;
padding-bottom:4%;
}

.tinyBoxComm{
padding-top:2%;
padding-bottom:2%;
}

/* keyVisual ------------------*/
#keyVisual{
position:relative;
}

#keyVisual:after{
content:"";
background:transparent;
background:linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 70%, rgba(255,255,255,1) 100%);
width:100%;
height:40%;
position:absolute;
bottom:0;
left:0;
}

#keyVisual .bgArea{
width:100%;
height:0;
padding-bottom:25%;
position:relative;
box-sizing:border-box;
}

.top #keyVisual .bgArea{
padding-bottom:50%;
}

#keyVisual .bgArea.mainImg{
background-repeat:no-repeat;
background-position:center center;
background-size:cover;
}

#keyVisual .bgSwitch{
background-position:center top !important;
background-size:cover !important;
min-height:100%;
z-index:0 !important;
}

#keyVisual .txtCatch{
width:100%;
color:#0f2b77;
line-height:1.8;
letter-spacing:0.2em;
text-align:center;
text-shadow:1px 1px 1px rgba(255, 255, 255, 0.8);
padding:0 2%;
position:absolute;
bottom:4%;
left:0;
z-index:99;
box-sizing:border-box;
opacity:0;
transition:all 900ms ease-in-out;
}

.loadComplete #keyVisual .txtCatch{
opacity:1;
}

#keyVisual .txtCatch .txt01{
font-size:260%;
font-weight:500;
letter-spacing:0.2em;
}

/* blcStyle01 ------------------*/
.blcStyle01{
margin-top:7%;
}

.blcStyle01 .imgListBlc{
border-bottom:1px solid #0f4b89;
padding:4% 7%;
}

.blcStyle01 .imgListBlc li{
width:28%;
text-align:center;
margin:0 8% 4% 0;
float:left;
}

.blcStyle01 .imgListBlc li:nth-of-type(3n){
margin-right:0;
}

.blcStyle01 .detailBlc{
padding:4% 2%;
}

.blcStyle01 .detailBlc .subj{
font-size:120%;
color:#70a754;
margin-bottom:2%;
}

.blcStyle01 .detailBlc .halfBlc .leftBlc{
width:47%;
float:left;
}

.blcStyle01 .detailBlc .halfBlc .rightBlc{
width:47%;
float:right;
}

.blcStyle01 .detailBlc .txtBlc{
margin-top:4%;
}

/* blcStyle01 ------------------*/
.blcStyle02{
margin-bottom:4%;
}

.blcStyle02 > .ttl{
background-color:#248CC8;
font-size:120%;
color:#fff;
padding:7px 20px;
}

.blcStyle02 > .inner{
border:1px solid #248CC8;
padding:2%;
box-sizing:border-box;
}

/* hexagonStyle01 --------------- */
.hexagonStyle01 {
position:relative;
width:95px; 
height:54.85px;
background-color:#0f4b89;
margin:27.42px 0 27.42px -47.5px;
}

.hexagonStyle01:before,
.hexagonStyle01:after{
content:"";
position:absolute;
width:0;
border-left:47.5px solid transparent;
border-right:47.5px solid transparent;
}

.hexagonStyle01:before{
bottom:100%;
border-bottom:27.42px solid #0f4b89;
}

.hexagonStyle01:after{
top:100%;
border-top:27.42px solid #0f4b89;
}

.hexagonStyle01 .txt{
font-size:280%;
line-height:1;
color:#fff;
width:100%;
height:100%;
text-align:center;
display:table;
position:relative;
z-index:3;
}

.hexagonStyle01 .txt .txtMid{
display:table-cell;
vertical-align:middle;
}

/* btmLink ------------------*/
.btmLink{
background-color:#fff;
}

.btmLink .list .imgBlc.img01{
background-image:url(../img/common/img01.jpg);
}

.btmLink .list .imgBlc.img02{
background-image:url(../img/common/img02.jpg);
}

.btmLink .list .imgBlc.img03{
background-image:url(../img/common/img03.jpg);
}

.btmLink .list .imgBlc.img04{
background-image:url(../img/common/img04.jpg);
}

@media screen and (max-width: 1000px) {
/* keyVisual ------------------*/
#keyVisual .bgArea{
padding-bottom:30%;
}

.top #keyVisual .bgArea{
padding-bottom:60%;
}

#keyVisual .txtCatch .txt01{
font-size:220%;
}
}

@media screen and (max-width: 767px) {
/* keyVisual ------------------*/
#keyVisual .bgArea{
padding-bottom:35%;
}

.top #keyVisual .bgArea{
padding-bottom:75%;
}

#keyVisual .txtCatch .txt01{
font-size:180%;
}

/* blcStyle01 ------------------*/
.blcStyle01 .detailBlc .subj{
font-size:110%;
}

.blcStyle01 .detailBlc .halfBlc .leftBlc,
.blcStyle01 .detailBlc .halfBlc .rightBlc{
width:100%;
float:none;
}

.blcStyle01 .detailBlc .halfBlc .rightBlc{
margin-top:4%;
}

/* hexagonStyle01 --------------- */
.hexagonStyle01 {
width:64px; 
height:36.95px;
margin:18.48px 0 18.48px -32px;
}

.hexagonStyle01:before,
.hexagonStyle01:after{
border-left:32px solid transparent;
border-right:32px solid transparent;
}

.hexagonStyle01:before{
border-bottom:18.48px solid #0f4b89;
}

.hexagonStyle01:after{
border-top:18.48px solid #0f4b89;
}

.hexagonStyle01 .txt{
font-size:220%;
}
}

@media screen and (max-width: 640px) {
}

@media screen and (max-width: 480px) {
/* keyVisual ------------------*/
#keyVisual .txtCatch .txt01{
font-size:140%;
letter-spacing:0.1em;
}
}


/* --------------------------------------------------
 Title
-------------------------------------------------- */
/* ttlStyle01 ------------------*/
.ttlStyle01{
color:#0f2b77;
text-align:center;
letter-spacing:0.1em;
margin-bottom:4%;
}

.ttlStyle01 .txt01,
.ttlStyle01 .txt02{
padding:7px 0;
display:block;
}

.ttlStyle01 .txt01{
font-size:180%;
position:relative;
}

.ttlStyle01 .txt01:after{
content:"";
background-color:#248cc8;
width:38px;
height:2px;
margin:0 auto;
position:absolute;
bottom:0;
left:0;
right:0;
}

.ttlStyle01 .txt02{
font-size:120%;
}

/* ttlStyle02 ------------------*/
.ttlStyle02{
color:#fff;
text-align:center;
letter-spacing:0.1em;
}

.ttlStyle02 .txt01,
.ttlStyle02 .txt02{
padding:7px 0;
display:block;
}

.ttlStyle02 .txt01{
font-size:180%;
position:relative;
}

.ttlStyle02 .txt01:after{
content:"";
background-color:#ffc800;
width:38px;
height:2px;
margin:0 auto;
position:absolute;
bottom:0;
left:0;
right:0;
}

.ttlStyle02 .txt02{
font-size:120%;
}

/* ttlStyle03 ------------------*/
.ttlStyle03{
font-size:140%;
color:#0f4b89;
border-top:1px solid #0f4b89;
border-bottom:1px solid #0f4b89;
padding:5px;
margin-bottom:2%;
position:relative;
box-sizing:border-box;
}

.ttlStyle03:before,
.ttlStyle03:after{
content:"";
background-color:#70a754;
width:50%;
height:1px;
position:absolute;
bottom:100%;
right:0;
}

.ttlStyle03:after{
top:100%;
bottom:auto;
}

/* ttlStyle04 ------------------*/
.ttlStyle04{
font-size:120%;
color:#0f4b89;
border-bottom:1px solid #70a754;
padding:5px;
margin-bottom:2%;
}

/* ttlStyle05 ------------------*/
.ttlStyle05{
color:#0f4b89;
border-bottom:1px solid #2e58a7;
padding:5px 0;
margin-bottom:2%;
}

/* ttlStyle06 ------------------*/
.ttlStyle06{
font-size:240%;
line-height:1.8;
text-align:center;
color:#70a754;
letter-spacing:0.1em;
}

.ttlStyle06 .txt01{
padding:0 50px;
display:inline-block;
position:relative;
}

.ttlStyle06 .txt01:before,
.ttlStyle06 .txt01:after{
content:"";
background-color:#70a754;
width:30px;
height:3px;
margin:auto 0;
position:absolute;
top:0;
bottom:0;
left:0;
}

.ttlStyle06 .txt01:after{
left:auto;
right:0;
}

@media screen and (max-width: 767px) {
/* ttlStyle01 ------------------*/
.ttlStyle01 .txt01{
font-size:160%;
}

.ttlStyle01 .txt01:after{
content:"";
width:30px;
}

.ttlStyle01 .txt02{
font-size:110%;
}

/* ttlStyle02 ------------------*/
.ttlStyle02 .txt01{
font-size:160%;
}

.ttlStyle02 .txt01:after{
content:"";
width:30px;
}

.ttlStyle02 .txt02{
font-size:110%;
}

/* ttlStyle03 ------------------*/
.ttlStyle03{
font-size:130%;
}

/* ttlStyle06 ------------------*/
.ttlStyle06{
font-size:180%;
}

.ttlStyle06 .txt01{
padding-left:30px;
padding-right:30px;
}

.ttlStyle06 .txt01:before,
.ttlStyle06 .txt01:after{
width:20px;
height:2px;
}
}

@media screen and (max-width: 480px) {
}


/* --------------------------------------------------
 Table
-------------------------------------------------- */
/* Common Table --------------- */
.tblComm{
border-top:1px dotted #fff;
}

.tblComm th,
.tblComm td{
padding:7px 15px;
border-bottom:1px dotted #ccc;
box-sizing:border-box;
}

.tblComm th{
background-color:#fff;
width:20%;
}

.tblComm th[align="center"],
.tblComm td[align="center"]{
text-align:center;
}

.tblComm th[align="right"],
.tblComm td[align="right"]{
text-align:right;
}

.tblRespon{
overflow-x:auto;
}

.tblRespon .tblComm{
min-width:600px;
}

.noteTbl{
color:red;
text-align:center;
margin:2% 0;
display:none;
}

/* Form Table --------------- */
.tblForm th{
background-color:#fff;
width:25%;
padding:2%;
text-align:left;
}

.tblForm td{
padding:2%;
text-align:left;
}

.tblForm th,
.tblForm td{
border-bottom:1px dotted #ccc;
}

/* tblRespon --------------- */
.tblRespon{
overflow-x:auto;
}

.noteTblRespon{
font-size:80%;
color:red;
margin:2% 0;
text-align:center;
display:none;
}

/* tblStyle01 --------------- */
.tblStyle01{
width:100%;
}

.tblStyle01 th[align="center"],
.tblStyle01 td[align="center"]{
text-align:center;
}

.tblStyle01 th[align="right"],
.tblStyle01 td[align="right"]{
text-align:right;
}

.tblStyle01 th,
.tblStyle01 td{
border:1px solid #0f4b89;
padding:7px 15px;
box-sizing:border-box;
}

.tblStyle01 th{
background-color:#0f4b89;
color:#fff;
width:30%;
}

/* tblStyle02 --------------- */
.tblStyle02{
width:100%;
}

.tblStyle02 th,
.tblStyle02 td{
border-bottom:1px solid #70a754;
padding:7px 15px;
box-sizing:border-box;
}

.tblStyle02 th{
font-size:120%;
color:#70a754;
width:30%;
}

/* tblStyle03 --------------- */
.tblStyle03{
width:100%;
}

.tblStyle03 tr{
position:relative;
}

.tblStyle03 tr:first-of-type th:before{
content:"";
background-color:#0f4b89;
width:50%;
height:1px;
position:absolute;
top:-1px;
left:0;
}

.tblStyle03 tr th:after{
content:"";
background-color:#0f4b89;
width:50%;
height:1px;
position:absolute;
bottom:0;
left:0;
}

.tblStyle03 tr:first-of-type th,
.tblStyle03 tr:first-of-type td{
border-top:1px solid #70a754;
}

.tblStyle03 th,
.tblStyle03 td{
color:#0f4b89;
border-bottom:1px solid #70a754;
padding:7px 15px;
box-sizing:border-box;
}

.tblStyle03 th{
width:25%;
}

/* tblStyle04 --------------- */
.tblStyle04{
width:100%;
}

.tblStyle04 th,
.tblStyle04 td{
padding:7px 15px;
box-sizing:border-box;
}

.tblStyle04 td.addr{
width:35%;
}

.tblStyle04 td.tel,
.tblStyle04 td.fax{
width:28%;
}

.tblStyle04 td.linkMap{
text-align:center;
vertical-align:middle;
}

/* tblStyle05 --------------- */
.tblStyle05{
width:100%;
}

.tblStyle05 th,
.tblStyle05 td{
padding:7px 15px;
position:relative;
box-sizing:border-box;
}

.tblStyle05 th:first-of-type{
width:70%;
}

.tblStyle05 th > .subj{
color:#0f4b89;
padding:4px 0;
}

.tblStyle05 th > .subj:after{
content:"";
background-color:#0f4b89;
width:calc(100% - 30px);
height:1px;
margin:auto;
position:absolute;
bottom:0;
left:0;
right:0;
}

.tblStyle05 td > .txt{
padding:4px 0;
}

.tblStyle05 td > .txt:after{
content:"";
background-color:#0f4b89;
width:calc(100% - 30px);
height:1px;
margin:auto;
position:absolute;
bottom:0;
left:0;
right:0;
}

/* tblStyle06 --------------- */
.tblStyle06{
width:100%;
margin:4% 0 7%;
}

.tblStyle06 th[align="center"],
.tblStyle06 td[align="center"]{
text-align:center;
}

.tblStyle06 th[align="right"],
.tblStyle06 td[align="right"]{
text-align:right;
}

.tblStyle06 th,
.tblStyle06 td{
border:1px solid #0f2b77;
padding:7px 15px;
box-sizing:border-box;
}

.tblStyle06 th{
background-color:#0f2b77;
color:#fff;
width:30%;
}

.tblStyle06 td:nth-child(2n+1){
width: 20%;
text-align: center;
font-weight: bold;
color:#0f2b77;
}

.tblStyle06 td:nth-child(2n+2){
width: 80%;
}

@media screen and (max-width: 767px) {
/* Common Table --------------- */
.tblComm th,
.tblComm td{
font-size:90%;
}

.tblComm th{
width:30%;
}

.tblComm.singleRow th,
.tblForm.singleRow th{
display:block;
font-weight:bold;
padding-bottom:0;
}

.tblComm.singleRow td,
.tblForm.singleRow td{
display:block;
}

.noteTbl{
display:block;
}

/* Form Table --------------- */
.tblForm th{
width:auto;
}

/* tblRespon --------------- */
.noteTblRespon{
display:none;
}

/* tblStyle02 --------------- */
.tblStyle02 th,
.tblStyle02 td{
width:100%;
display:block;
padding-bottom:0;
border-bottom:none;
}

.tblStyle02 td:last-of-type{
border-bottom:1px solid #70a754;
padding-bottom:7px;
}

/* tblStyle04 --------------- */
.tblStyle04 th,
.tblStyle04 td{
display:block;
}

.tblStyle04 td.addr,
.tblStyle04 td.tel,
.tblStyle04 td.fax{
width:100%;
}

/* tblStyle05 --------------- */
.tblStyle05 th,
.tblStyle05 td{
padding-left:7px;
padding-left:7px;
}

.tblStyle05 th:first-of-type{
width:50%;
}

.tblStyle05.lastMin th:first-of-type{
width:75%;
}

.tblStyle05 th > .subj:after{
width:calc(100% - 14px);
}

.tblStyle05 td > .txt:after{
width:calc(100% - 14px);
}
}

@media screen and (max-width: 650px) {
/* tblRespon --------------- */
.noteTblRespon{
display:block;
}
}

@media screen and (max-width: 480px) {
.tblStyle06 th,
.tblStyle06 td{
display: block;
width: 100%;
box-sizing: border-box;
}

.tblStyle06 td:nth-child(2n+1) {
text-align: left;
width: 100%;
}

.tblStyle06 td:nth-child(2n+2){
width: 100%;
}
}


/* --------------------------------------------------
 List
-------------------------------------------------- */
/* Common List --------------- */
.listComm li{
width:48%;
float:left;
}

.listComm li:nth-of-type(2n){
float:right;
}

/* listStyle01 --------------- */
.listStyle01 li{
width:32%;
margin:0 2% 2% 0;
float:left;
}

.listStyle01 li:nth-of-type(3n){
margin-right:0;
}

/* listStyle02 --------------- */
.listStyle02 li{
background-color:#f7f4f0;
width:23.5%;
margin:0 2% 2% 0;
padding:10px 10px 20px;
float:left;
box-sizing:border-box;
}

.listStyle02 li:nth-of-type(4n){
margin-right:0;
}

.listStyle02.col3 li{
width:32%;
}

.listStyle02.col3 li:nth-of-type(4n){
margin-right:2%;
}

.listStyle02.col3 li:nth-of-type(3n){
margin-right:0;
}

.listStyle02 li .subj{
background-color:#70a754;
color:#fff;
text-align:center;
line-height:1.8;
padding:4px 2%;
margin-top:5px;
}

.listStyle02 li .txtBlc{
font-size:90%;
line-height:1.8;
padding:2%;
margin-top:5px;
}

/* listStyle03 --------------- */
.listStyle03{
border-top:1px solid #70a754;
position:relative;
}

.listStyle03:before{
content:"";
background-color:#0f4b89;
width:50%;
height:1px;
position:absolute;
top:-1px;
left:0;
}

.listStyle03 dt,
.listStyle03 dd{
color:#0f4b89;
padding:7px 15px;
box-sizing:border-box;
}

.listStyle03 dt{
width:25%;
float:left;
}

.listStyle03 dd{
padding-left:25%;
border-bottom:1px solid #70a754;
position:relative;
}

.listStyle03 dd:before{
content:"";
background-color:#0f4b89;
width:50%;
height:1px;
position:absolute;
bottom:-1px;
left:0;
}

.listStyle03 dd:after{
content:"";
clear:both;
display:block;
}

/* listStyle04 --------------- */
.listStyle04 li{
width:32%;
margin:0 2% 2% 0;
-webkit-box-shadow:0px 10px 40px 0px rgba(0,0,0,0.2);
-moz-box-shadow:0px 10px 40px 0px rgba(0,0,0,0.2);
box-shadow:0px 10px 40px 0px rgba(0,0,0,0.2);
float:left;
box-sizing:border-box;
}

.listStyle04.col2Sp li{
margin-bottom:7%;
}

.listStyle04.col4 li{
width:23.5%;
margin-bottom:7%;
}

.listStyle04 li:nth-of-type(3n){
margin-right:0;
}

.listStyle04.col4 li:nth-of-type(3n){
margin-right:2%;
}

.listStyle04.col4 li:nth-of-type(4n){
margin-right:0;
}

.listStyle04 li a{
text-decoration:none;
}

.listStyle04 li .imgBlc{
background-repeat:no-repeat;
background-position:center center;
background-size:cover;
padding-top:58%;
}

.listStyle04.col2Sp li .position{
font-size:80%;
line-height:1.8;
}

.listStyle04 li .subj{
text-align:center;
letter-spacing:0.1em;
padding:7px 2% 30px;
position:relative;
}

.listStyle04.col2Sp li .subj{
font-size:120%;
}

.listStyle04 li .subj:after{
content:"→";
background-color:#248cc8;
color:#fff;
width:46px;
height:46px;
line-height:46px;
border-radius:46px;
text-align:center;
display:block;
margin:0 auto;
position:absolute;
bottom:-23px;
left:0;
right:0;
transition:all 400ms ease-in-out;
}

.listStyle04.colorBlue li .subj:after{
background-color:#0f2b77;
}

.listStyle04 li a:hover .subj:after{
-ms-transform:rotate(360deg);
-webkit-transform:rotate(360deg);
transform:rotate(360deg);
}

.listStyle04 li .subj > .txt{
color:#248cc8;
}

.listStyle04.colorBlue li .subj > .txt{
color:#0f2b77;
}

/* accordionStyle01 --------------- */
.accordionStyle01 .accordTtl{
border-bottom:1px solid #248CC8;
cursor:pointer;
padding:12px 90px 12px 30px;
position:relative;
z-index:19;
}

.accordionStyle01.noAccordion .accordTtl,
.accordionStyle01 .accordTtl.ttlOnly{
cursor:auto;
}

.accordionStyle01 .accordTtl .txt{
font-size:120%;
color:#248CC8;
}

.accordionStyle01 .accordTtl.onclick .txt{
color:#248CC8;
}

.accordionStyle01 .accordTtl .more{
bottom:0;
position:absolute;
right:0;
top:0;
width:70px;
}

.accordionStyle01.noAccordion .accordTtl .more{
display:none;
}

.accordionStyle01 .accordTtl .more:before{
content:"";
background-color:#70a754;
width:14px;
height:2px;
margin:auto;
position:absolute;
top:0;
bottom:0;
left:0;
right:0;
transition:all 200ms ease-in-out;
-webkit-transform:rotate(90deg);
-ms-transform:rotate(90deg);
transform:rotate(90deg);
}

.accordionStyle01 .accordTtl.onclick .more:before{
-webkit-transform:rotate(0deg);
-ms-transform:rotate(0deg);
transform:rotate(0deg);
}

.accordionStyle01 .accordTtl .more:after{
content:"";
background-color:#70a754;
width:14px;
height:2px;
margin:auto;
position:absolute;
top:0;
bottom:0;
left:0;
right:0;
}

.accordionStyle01 .accordContent{
border-bottom:1px solid #70a754;
padding:20px 0 60px;
margin-bottom:60px;
position:relative;
}

.accordionStyle01.noAccordion .accordContent{
border-bottom:none;
padding:0;
margin-bottom:30px;
}

.accordionStyle01 .accordContent .inner{
padding:2% 4%;
}

.accordionStyle01 .accordContent .btnClose{
background-color:#70a754;
color:#fff;
border:1px solid #70a754;
bottom:-22px;
box-sizing:border-box;
cursor:pointer;
display:block;
padding:4px 60px;
position:absolute;
right:10px;
text-decoration:none;
z-index:2;
}

/* flowCommBlc --------------- */
.flowCommBlc{
position:relative;
padding:0 47.5px;
margin:0 auto;
}

.flowCommBlc:after{
content:"";
background-color:#0f4b89;
width:2px;
height:calc(100% - 47px);
position:absolute;
top:0;
left:47.5px;
}

.flowCommBlc.bordNon:after{
display:none;
}

.flowCommBlc.colorGreen:after{
background-color:#70a754;
}

.flowCommBlc.colorYellow:after{
background-color:#ffc800;
}

.flowCommBlc .ttl{
padding:0 0 4%;
}

.flowCommBlc .ttl .txt{
background-color:#0f4b89;
color:#fff;
font-size:120%;
text-align:center;
letter-spacing:0.2em;
width:320px;
height:50px;
border:2px solid #0f4b89;
text-transform:uppercase;
margin-left:-22px;
position:relative;
z-index:3;
box-sizing:border-box;
}

.flowCommBlc.colorGreen .ttl .txt{
background-color:#70a754;
border-color:#70a754;
}

.flowCommBlc.colorYellow .ttl .txt{
background-color:#ffc800;
border-color:#ffc800;
}

.flowCommBlc .ttl .txt:before{
border-bottom:25px solid transparent;
border-right:10px solid #0f4b89;
border-top:25px solid transparent;
bottom:0;
content:"";
height:0;
margin:0 auto;
position:absolute;
right:0;
top:-2px;
width:0;
}

.flowCommBlc.colorGreen .ttl .txt:before{
border-right-color:#70a754;
}

.flowCommBlc.colorYellow .ttl .txt:before{
border-right-color:#ffc800;
}

.flowCommBlc .ttl .txt:after{
border-bottom:25px solid transparent;
border-right:10px solid #fff;
border-top:25px solid transparent;
bottom:0;
content:"";
height:0;
margin:0 auto;
position:absolute;
right:-2px;
top:-2px;
width:0;
}

.flowCommBlc .ttl .txt .txt01:after{
content:"";
width:0;
height:0;
border-style:solid;
border-width:0 22px 18px 0;
border-color:transparent #04386e transparent transparent;
position:absolute;
top:calc(100% + 2px);
left:-2px;
}

.flowCommBlc.colorGreen .ttl .txt .txt01:after{
border-color:transparent #42a610 transparent transparent;
}

.flowCommBlc.colorYellow .ttl .txt .txt01:after{
border-color:transparent #c19700 transparent transparent;
}

.flowCommBlc .stepBlc{
position:relative;
}

.flowCommBlc .stepBlc .stepList dt{
float:left;
}

.flowCommBlc .stepBlc .stepList dd{
font-size:120%;
color:#fff;
padding-top:30px;
padding-left:90px;
margin-bottom:50px;
}

.flowCommBlc .stepBlc .stepList dd:after{
content:"";
display:block;
clear:both;
}

.flowCommBlc.colorGreen .hexagonStyle01{
background-color:#70a754;
}

.flowCommBlc.colorGreen .hexagonStyle01:before{
border-bottom-color:#70a754;
}

.flowCommBlc.colorGreen .hexagonStyle01:after{
border-top-color:#70a754;
}

.flowCommBlc.colorYellow .hexagonStyle01{
background-color:#ffc800;
}

.flowCommBlc.colorYellow .hexagonStyle01:before{
border-bottom-color:#ffc800;
}

.flowCommBlc.colorYellow .hexagonStyle01:after{
border-top-color:#ffc800;
}

@media screen and (max-width: 1000px) {
/* accordionStyle01 --------------- */
.accordionStyle01 .accordContent{
padding:4% 0 7%;
}
}

@media screen and (max-width: 767px) {
/* listStyle02 --------------- */
.listStyle02 li{
width:32%;
}

.listStyle02 li:nth-of-type(4n){
margin-right:2%;
}

.listStyle02 li:nth-of-type(3n){
margin-right:0;
}

/* listStyle04 --------------- */
.listStyle04 li .subj{
padding-bottom:20px;
}

.listStyle04 li .subj:after{
width:32px;
height:32px;
line-height:32px;
border-radius:32px;
bottom:-16px;
}

/* accordionStyle01 --------------- */
.accordionStyle01 .accordTtl{
padding:2% 60px 2% 4%;
}

.accordionStyle01 .accordTtl .more{
width:55px;
}

.accordionStyle01 .accordContent .inner{
padding:2%;
}

/* flowCommBlc ------------------*/
.flowCommBlc{
padding:0 2% 0 32px;
}

.flowCommBlc:after{
height:calc(100% - 32px);
left:32px;
}

.flowCommBlc .ttl{
padding-bottom:30px;
}

.flowCommBlc .ttl .txt{
width:240px;
height:40px;
padding:2px 0;
}

.flowCommBlc .ttl .txt:before{
border-bottom:20px solid transparent;
border-right:8px solid #0f4b89;
border-top:20px solid transparent;
}

.flowCommBlc .ttl .txt:after{
border-bottom:20px solid transparent;
border-right:8px solid #fff;
border-top:20px solid transparent;
}

.flowCommBlc .stepBlc .stepList dd{
padding-top:25px;
padding-left:55px;
margin-bottom:30px;
}

.flowCommBlc.colorGreen .hexagonStyle01:before{
border-bottom-color:#70a754;
}

.flowCommBlc.colorGreen .hexagonStyle01:after{
border-top-color:#70a754;
}

.flowCommBlc.colorYellow .hexagonStyle01:before{
border-bottom-color:#ffc800;
}

.flowCommBlc.colorYellow .hexagonStyle01:after{
border-top-color:#ffc800;
}
}

@media screen and (max-width: 480px) {
/* listStyle01 --------------- */
.listStyle01 li{
width:49%;
}

.listStyle01 li:nth-of-type(3n){
margin-right:2%;
}

.listStyle01 li:nth-of-type(2n){
margin-right:0;
}

/* listStyle02 --------------- */
.listStyle02 li{
width:49%;
}

.listStyle02 li:nth-of-type(3n){
margin-right:2%;
}

.listStyle02 li:nth-of-type(2n){
margin-right:0;
}

.listStyle02.col3 li{
width:49%;
}

.listStyle02.col3 li:nth-of-type(3n){
margin-right:2%;
}

.listStyle02.col3 li:nth-of-type(2n){
margin-right:0;
}

/* listStyle04 --------------- */
.listStyle04.col2Sp li{
width:48%;
margin-right:4%;
margin-bottom:40px;
}

.listStyle04.col2Sp li:nth-of-type(3n){
margin-right:4%;
}

.listStyle04.col2Sp li:nth-of-type(2n){
margin-right:0;
}

.listStyle04.col4 li{
width:48%;
margin-right:4%;
margin-bottom:40px;
}

.listStyle04.col4 li:nth-of-type(4n){
margin-right:4%;
}

.listStyle04.col4 li:nth-of-type(2n){
margin-right:0;
}

/* accordionStyle01 --------------- */
.accordionStyle01 .accordTtl{
padding:4% 60px 4% 4%;
}
}


/* --------------------------------------------------
 Button
-------------------------------------------------- */
/* btnStyle01 --------------- */
.btnStyle01{
text-align:center;
}

.btnStyle01 a{
font-size:120%;
width:100%;
max-width:320px;
background-color:#ffc800;
color:#fff;
text-decoration:none;
border-radius:999px;
padding:4px 2%;
display:inline-block;
box-sizing:border-box;
}

.btnStyle01.colorBlue a {
background-color: #0f4b89;
}

/* btnStyle02 --------------- */
.btnStyle02{
background-color:#248cc8;
text-align:center;
padding:20px 2%;
}

.btnStyle02 a{
width:100%;
max-width:320px;
color:#fff;
text-decoration:none;
border:1px solid #fff;
padding:10px 2%;
display:inline-block;
box-sizing:border-box;
transition:all 200ms ease-in-out;
}

.btnStyle02 a:hover{
background-color:#fff;
color:#248cc8;
}

@media screen and (max-width: 1200px) {
}

@media screen and (max-width: 767px) {
}

@media screen and (max-width: 480px) {
}


/* --------------------------------------------------
 Text
-------------------------------------------------- */
.txtMincho{
font-family:"Times New Roman", "游明朝",YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E","メイリオ", Meiryo,serif; /* Mincho */
}

.txtCenter{
text-align:center;
}

.txtUnderline{
text-decoration:underline;
}

.txtBig{
font-size:115%;
}

.txtSmall{
font-size:85%;
}

.txtWeight{
font-weight:bold;
}

.txtInlineBlc{
text-align:left;
display:inline-block;
}

.txtBlack{
color:#000;
}

.txtRed{
color:#e60000;
}

.txtGreen{
color:#70a754;
}

@media screen and (max-width: 767px) {
.txtForSp{
text-align:left !important;
}

.txtForSp br{
display:none !important;
}

span.txtForSp{
display:inline-block;
}
}

@media screen and (max-width: 480px) {
}


/* --------------------------------------------------
 Other Classes
-------------------------------------------------- */
/* Clear fix --------------- */
.clearFix:after{
content:"";
clear:both;
display:block;
}

/* Clear --------------- */
.clear{
clear:both;
}

/* Hide --------------- */
.hidden{
opacity:0;
}

.visible{
opacity:1;
}

.disnon{
display:none;
}

/* imgDeco --------------- */
.imgDeco{
border:1px solid #cdcdcd;
padding:1px;
box-sizing:border-box;
}

/* imgCircle --------------- */
.imgCircle{
border-radius:100%;
}

/* imgZoomEffect --------------- */
.imgZoom{
overflow:hidden;
}

.imgZoom img,
.imgZoom .img{
-ms-transform:translateZ(0px);
-webkit-transform:translateZ(0px);
transform:translateZ(0px);
transition:all 200ms ease-in-out 0s;
}

.imgZoom img:hover,
.imgZoom .img:hover{
-ms-transform:scale(1.05);
-webkit-transform:scale(1.05);
transform:scale(1.05);
}

/* PDF icon --------------- */
.icnPdf{
vertical-align:bottom;
margin:0px 3%;
}

/* Form required --------------- */
.required,
.nRequired{
background-color:#f02323;
color:#fff;
display:inline-block;
font-size:12px;
margin:0 5px;
padding:0;
text-align:center;
line-height:22px;
width:34px;
border-radius:3px;
}

.nRequired{
background-color:#999;
}

@media screen and (max-width: 1200px) {
/* Hide --------------- */
.post.hidden{
opacity:1;
}
}

@media screen and (max-width: 767px) {
/* Popup --------------- */
.popup{
display:block;
position:relative;
}
}