@charset "utf-8";

#contents {
margin-top: 160px;
}

#pagetitle {
width:100%;
padding: 2em 0;
border-top: 1px solid #E6E6E6;
border-bottom: 1px solid #E6E6E6;
/*background-image: url("../images/bg.png");
background-position: left top;
background-size: 5px 5px;*/
background-color: #4C8AD0;
}

#pagetitle h2 {
font-size: 4.4rem;
font-weight: 500;
color: #FFF;
line-height: 1.4;
}

#pagetitle h2 span {
display : block;
font-size: 2.0rem;
letter-spacing: 0.2em;
align-items : center;
}

#pan {text-align: right;}
.panbox {width: 96%;}
.panbox ul {font-size: 0;}

.panbox ul li {
display: inline-block;
font-size: 1.4rem;
}

.panbox ul li::after {
content: ">";
right: 0;
margin: 0 1em;
}

.panbox ul li:last-child::after {
content:"";
}
@media screen and (max-width: 768px) {
    #contents {
    margin-top: 100px;
    padding-bottom:2em;
    }
    /* ページタイトル */
    #pagetitle {
    padding: 1em 0;
    }
    #pagetitle h2 {
    font-size: 2.6rem;
    }
    #pagetitle h2 span {
    font-size: 1.5rem;
    }
    /* ぱんくず */
    #pan {
    text-align: left;
    }
    .panbox {
    width: 90%;
    margin: 0 auto;
    }
}

/* コンテンツ
----------------------------------------------------------- */
#main {
width: 1180px;
margin: 0 auto 3em auto;
overflow: hidden;
}

.mainbox {
text-align: left;
word-wrap: break-word;
overflow-wrap: break-word;
}

.mainbox h3 {
clear: both;
font-size: 2.4rem;
height: 60px;
padding: 0.5em 0 0 1em;
background-color: #F4B21B;
border-radius: 30px;
letter-spacing: 0.1em;
line-height: 1.6;
margin: 2em 0 1em 0;
}

.mainbox h3.catch {
clear: inherit;
height: auto;
background-color: #FFF;
padding: 0;
}

.mainbox h3.title {
clear: inherit;
font-size: 3.0rem;
height: auto;
background-color: #FFF;
padding: 0;
margin: 1em 0;
}

.mainbox h4 {
font-size: 2.4rem;
font-weight: 500;
line-height: 1.5;
letter-spacing: 0.1em;
margin: 2em 0 1em 0;
}

.mainbox h5 {
font-size: 2.0rem;
border-left: 4px solid #0074BD;
padding-left: 1em;
margin: 2em 0 1em 0;
}

.mainbox h6 {
font-size: 1.8rem;
margin: 0 0 1em 0;
}

.mainbox p {
line-height: 2.0;
}

p.btlink {
padding: 2em 0 0 0;
margin-bottom: 2em;
text-align: center;
}

p.btlink {
display: inline-block;
}

p.btlink a {
font-weight: 700;
min-width: 200px;
display: inline-block;
border:2px solid #4C8AD0;
padding: 0.5em 2em;
border-radius: 6px;
text-decoration: none;
transition: 0.6s;
}

p.btlink a:hover {
color: #FFF;
background-color: #4C8AD0;
}

.imgright {
float:right;
max-width: 400px;
}

.mainbox blockquote {
border:1px solid #CCC;
background-color: #F2F2F2;
margin: 2em 0;
padding: 1em 2em;
}

.mainbox blockquote h4 {
margin: 0 0 1em 0;
}

.mainbox ul {
padding: 0;
margin-bottom: 1em;
}

.mainbox ul li {
margin-bottom: 0.5em;
padding-left: 1em;
background-image:url("../images/img_li.png");
background-position: 0 0.8em;
background-repeat: no-repeat;
background-size: 6px 6px;
}

.mainbox ul.ul_list4 {
width: 100%;
display: -webkit-flex;
display: flex;
-webkit-flex-wrap: wrap;
padding:0;
}

.mainbox ul.ul_list4 li {
list-style-type: none;
width: 23%;
padding: 0.3em 1em;
margin: 0 1% 1em 1%;
color :#FFF;
background-color:#0074BD;
border-radius: 6px;
background-image: none;
}

.mainbox ol {
padding: 0 0 0 26px;
margin-bottom: 1em;
}

.mainbox ol li {
list-style-type:decimal;
}

.mainbox table {
width: 100%;
border: 1px solid #999;
}

.mainbox table tr {
border-bottom: 1px dotted #CCC;
}
.mainbox table tr:last-child {
border:none;
}
.mainbox table th {
width: 20%;
padding:  0.5em 1em;
border-right: 1px dotted #666;
background-color: #F2F2F2;
}
.mainbox table td {
width: 80%;
padding:  0.5em 1em;
border-right: 1px dotted #666;
}

.mainbox table.table_2column {width: auto!important;}
.mainbox table.table_2column th {width: 20%!important;}
.mainbox table.table_2column td {width: 80%!important;}

.mainbox  table.t_photo,
.mainbox  table.t_photo th,
.mainbox  table.t_photo td {
border:none;
}

.mainbox dl {
overflow: hidden;
margin-bottom: 2em;
}

.mainbox dt {
width: 20%;
float: left;
}

.mainbox dd {
width: 80%;
float: right;
text-align: left;
}

.mainbox dd h4 {
margin: 0 0 0.6em 0;
}

@media screen and (max-width: 768px) {
    #main {
    width: 100%;
    margin: 0 auto;
    }
    .mainbox {
    width: 90%;
    margin: 0 auto;
    }
    .mainbox h3 {
    font-size: 2.0rem;
    height: 50px;
    border-radius: 25px;
    letter-spacing: 0;
    text-align: center;
    padding: 0.5em 0 0 0;
    }
    .mainbox h3.catch {
    font-size: 2.2rem;
    text-align: left;
    }
    .mainbox > h3.catch {
    margin: 1em 0;
    }
    .mainbox h3.title {
    font-size: 2.0rem;
    }
    .mainbox h4 {
    font-size: 1.8rem;
    letter-spacing: 0;
    }
    .mainbox ul.ul_list4 li {
    width: 48%;
    margin: 0 1% 0.5em 1%;
    font-size: 1.4rem;
    }
    .imgright {
    margin: 0 auto 1em auto;
    }
    .mainbox table {
    width: 100%!important;
    }
    .mainbox table th {
    height: auto!important;
    }
    .mainbox table td {
    height: auto!important;
    }
    .mainbox table.table_2column {
    border:1px solid #CCC;
    display: table;
    }
    .mainbox table.table_2column th {
    width: 40%!important;
    display: table-cell;
    }
    .mainbox table.table_2column td {
    width: 60%!important;
    display: table-cell;
    }
    .mainbox table.t_sp {
    width: 100%!important;
    }
    .mainbox table.t_sp th {
    width: 100%!important;
    display:block;
    border-right:none;
    height: auto!important;
    }
    .mainbox table.t_sp td {
    width: 100%!important;
    display:block;
    border-right:none;
    height: auto!important;
    }
    .t_scroll {
    position: relative;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 1em;
    }
    .t_scroll::before {
    content: "横のフリックしてご覧いただけます";
    color: #B8002C;
    margin-bottom: 1em;
    }
    .t_scroll table {
    width: 1000px!important;
    display: table;
    border:1px solid #CCC;
    }
    .t_scroll table th {
    display: table-cell;
    padding:  0.5em 1em;
    }
    .t_scroll table td {
    display: table-cell;
    padding:  0.5em 1em;
    }
    .mainbox  table.t_photo th,
    .mainbox  table.t_photo td {
    width: 100%!important;
    display: block;
    }
    .mainbox dt {
    width: 100%;
    float: none;
    display: block;
    margin-bottom: 1em;
    text-align: center;
    }
    .mainbox dd {
    width: 100%;
    float: none;
    display: block;
    }
}
    .gmap {
    height: 0;
    overflow: hidden;
    padding-bottom: 56.25%;
    position: relative;
margin-bottom: 2em;
    }
    .gmap iframe {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    }



/*-----------------------------------------------
ページ移動
------------------------------------------------*/
#entrymenu {
clear: both;
margin-top: 2em;
}

#entrymenu ul {
font-size: 0;
padding:0;
text-align: center;
}

#entrymenu ul li {
font-size: 1.4rem;
display: inline-block;
list-style-type:none;
padding-left:0;
background-image: none;
}

#entrymenu ul li a {
display: block;
font-size: 1.4rem;
color: #333;
border: 1px solid #666;
border-right: 0;
padding: 0.6em 1em;
text-align:center;
text-decoration: none;
transition: 0.6s;
}

@media screen and (max-width: 768px) {
    /* ページ移動*/
    #entrymenu {
    margin-bottom: 2em;
    }
    #entrymenu ul li a {
    font-size: 1.2rem;
    padding:0.3em 0.6em;
    }
}

#entrymenu ul li:last-child a {
border-right: 1px solid #666;
}

#entrymenu ul li a:hover {
background-color:#666;
}


/*-----------------------------------------------
リンク系アイコン
------------------------------------------------*/
a.pdf {
color: #4C8AD0;
font-weight: 700;
padding: 0.5em 2em 0.5em 0;
background-image: url(../images/icn_pdf.png);
background-repeat: no-repeat;
background-position: 98% 0.8em;
text-decoration: none;
transition: 0.6s;
}

p a.pdf {
padding: 0.5em 2em 0.5em 1em;
border:2px solid #4C8AD0;
border-radius: 6px;
}

p a.pdf:hover {
color: #FFF;
background-color: #4C8AD0;
}

a.pdf img {
padding:0;
margin:0;
background:none;
}

a.out {
padding: 0 1em 0 0;
margin: 0 0.5em 0 0;
background-image: url(../images/icn_blank.png);
background-repeat: no-repeat;
background-position: right center;
}

.btlink a.out {
background-position: 98% center;
}

a.out img {
padding: 0;
margin: 0;
background-image: none;
}

a.word {
padding: 0 1.5em 0 0;
margin: 0 0.5em 0 0;
background-image: url(../images/icn_doc.png);
background-repeat: no-repeat;
background-position: right 0.4em;
display:inline-block;
}

a.word img {
padding:0;
margin:0;
background:none;
}

a.xls {
padding: 0 1.5em 0 0;
margin: 0 0.5em 0 0;
background-image: url(../images/icn_xls.png);
background-repeat: no-repeat;
background-position: right 0.4em;
display:inline-block;
}

a.xls img {
padding:0;
margin:0;
background:none;
}

a.ppt {
padding: 0 2em 0 0;
margin: 0 0.5em 0 0;
background-image: url("../images/icn_ppt.png");
background-repeat: no-repeat;
background-position: right 0.3em;
display:inline-block;
}

a.ppt img {
padding:0;
margin:0;
background:none;
}

.mainbox ul li a {
font-weight: 500;
}

.mainbox ul li a.pdf {
color: #4C8AD0;
font-weight: 700;
padding: 0 2em 0 0;
border:none;
text-decoration: underline;
transition: 0.6s;
display:inline-block;
background-position: 98% 0.5em;
}

.mainbox ul li a.pdf:hover {
background-color: #FFF;
text-decoration: none;
}

.mainbox ul.bt {
padding: 2em 0 0 0;
margin-bottom: 2em;
text-align: center;
}

.mainbox ul.bt li {
display: inline-block;
background-image: none;
padding-left:0;
}

.mainbox ul.bt li a {
min-width: 260px;
display: block;
border:2px solid #4C8AD0;
padding: 0.5em 0;
border-radius: 6px;
text-decoration: none;
transition: 0.6s;
background-position: 98% center;
}

.mainbox ul.bt li a:hover {
color: #FFF;
background-color: #4C8AD0;
}

/*-----------------------------------------------
introduction
------------------------------------------------*/
.introductionarea dl dt {
text-align:center;
}

.introductionarea dl dd {
padding-top: 1em;
}

/*-----------------------------------------------
プログラム
------------------------------------------------*/
.programbox {
width: 100%;
display: -webkit-flex;
display: flex;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
}

.programbox1 {
width: 48%;
margin: 0 2% 1em 0;
padding: 1em 0.5em 1em 1em;
position: relative;
}

.programbox1:nth-of-type(even) {
padding: 1em 1em 1em 0.5em;
margin: 0 0 2em 2%;
border-right:none;
}

.programbox1 h3 {
font-size: 2.2rem;
padding-top: 0.6em;
margin:1em 0;
color: #FFF;
letter-spacing: 0;
text-align: center;
background-color: #F4B21B;
}

.programbox1 p {
margin: 0 1em 1em 1em;
}

.programbox1 ul {
margin: 2em 0 0 1em ;
padding:0;
}

.programbox1 ul li {
display: inline-block;
padding-left: 0;
background-image: none;
}

.programbox1 ul li a {
min-width: 150px;
display: block;
color: #000;
padding: 0.3em 1em;
border:1px solid #666;
border-radius: 4px;
text-align: center;
text-decoration: none;
transition: 0.6s;
position: relative;
}

.programbox1 ul li a::before {
position: absolute;
content: "→" ;
top: 0.35em;
right: 0.5em;
}

.programbox1 ul li a:hover {
color: #FFF;
background-color: #666;
}

.procedurearea h3.step {
width:200px;
padding-left: 0;
margin:0;
color: #FFF;
text-align: center;
background-color: #0074BD;
}

.stepbox {
margin-left: 6em;
padding: 3em 0 4em 3em;
border-left: 5px solid #4C8AD0;
}

.stepbox:last-child {
border:none;
}


@media screen and (max-width: 768px) {
    /* プログラム　*/
    .programbox1 {
    width: 100%;
    padding: 1em 0;
    margin: 0 0 1em 0;
    }
    .programbox1 h3 {
    font-size: 1.8rem;
    }
    .programbox1:nth-of-type(even) {
    padding: 1em 0;
    margin: 0 0 1em 0;
    }
    .stepbox {
    margin-left: 1.0em;
    padding: 2em 0 2em 1.0em;
    border-left: 3px solid #4C8AD0;
    }
}

/*-----------------------------------------------
よくある質問
------------------------------------------------*/
.faqbox {
overflow:hidden;
}
.faqbox h4 {
padding-left: 2em;
background-image: url(../images/faq_q.svg);
background-repeat: no-repeat;
background-position: left 0.3em;
background-size: 24px 24px;
}
.faq_a {
padding-left: 3em;
padding-bottom: 2em;
margin-bottom: 2em;
border-bottom: 1px solid #CCC;
background-image: url(../images/faq_a.svg);
background-repeat: no-repeat;
background-position: left 0.3em;
background-size: 24px 20px;
}

/*-----------------------------------------------
TOPICS
------------------------------------------------*/
#topicsmenu ul {
margin-bottom:0;
padding-left: 1.1em;
}

#topicsmenu ul li {
display: inline-block;
width: 100px;
margin-bottom: 0;
padding-left:0;
background-image:none;
}

#topicsmenu ul li a {
display: block;
font-size: 1.4rem;
color: #FFF;
padding: 0.6em 0;
text-align:center;
background-color:#F4B21B;
border:1px solid #F4B21B;
text-decoration: none;
border-top-left-radius: 6px;
border-top-right-radius: 6px;
transition: 0.6s;
}

#topicsmenu ul li a:hover {
color: #F4B21B;
background-color:#FFF;
}

.topicsbox {
width: 100%;
text-align: left;
border: 3px solid #E6E6E6;
border-radius: 20px;
padding: 50px 120px;
margin: 0 auto;
overflow:hidden;
}

.topicsbox h3.catch {
margin: 0 0 0.8em 0.5em;
}

.topicsbox h3.title {
margin-bottom: 0;
letter-spacing: 0.05em;
}

.topicsbox .more {
text-align: right;
}

.topicsbox dl {
width: 100%;
padding: 1em 1em;
margin:0;
display: -webkit-flex;
display: flex;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
border-bottom: 1px solid #E6E6E6;
background-image: url("../images/img_arrow.svg");
background-position: right center;
background-repeat: no-repeat;
background-size: 12px 20px;
position: relative;
}

.topicsbox dl dt {
width: 130px;
color: #000;
font-size: 2.6rem;
font-weight: 700;
text-align: left;
line-height: 1.2;
}

.topicsbox dl dt span {
display: block;
font-size: 1.5rem;
font-weight: 500;
}

.topicsbox dl dd {
text-align: left;
font-weight: 500;
line-height: 1.3;
}

.topicsbox dl dd span {
display: block;
width: 110px;
height: 24px;
font-size: 1.3rem;
color: #FFF;
margin-bottom: 0.3em;
background-color: #4C8AD0;
border-radius: 12px;
text-align: center;
letter-spacing: 0.1em;
line-height: 24px;
}

.topicsbox dl dd span.event {
background-color: #F4B21B;
}
.topicsbox dl dd a {
color: #333;
text-decoration: none;
transition: 0.6s;
}

.topicsbox dl dd a::before {
content: "";
position: absolute;
top: -1px;
left: -1px;
right: -1px;
bottom: -1px;
}

.topicsbox dl dd a:hover {
color:#4C8AD0;
}

#newsfootermenu ul {
margin-bottom:0;
text-align: right;
font-size: 0;
}

#newsfootermenu ul li {
display: inline-block;
margin-bottom: 0;
padding-left:0;
background-image:none;
margin-left:1px;
}

#newsfootermenu ul li a {
display: block;
font-size: 1.6rem;
color: #0074BD;
padding: 0.2em 1em;
text-align:center;
background-color: #FFF;
border:1px solid #0074BD;
text-decoration: none;
transition: 0.6s;
}

#newsfootermenu ul li a:hover {
color: #FFF;
background-color:#0074BD;
}

.img_oqeanous {
    float: right;
    width: 310px;
    margin-right: 20%;
    display: inline-block;
}


@media screen and (max-width: 768px) {
    /* TOPICS　*/
    #topicsmenu {
    padding-top: 1em;
    }
    #topicsmenu ul li {
    display: inline-block;
    width: auto;
    }
    #topicsmenu ul li a {
    font-size: 1.2rem;
    padding:0.3em 1em;
    }
    .topicsbox {
    width: 100%;
    padding: 1.5em 1em 0 1em;
    }
    .topicsbox h3.catch{
    font-size: 2.0rem;
    }
    .topicsbox h3.title {
    font-size: 2.0rem;
    text-align:left;
    }
    .topicsbox > h3.title {
    margin:0 0 1em 0;
    }
    .topicsbox dl dt {
    width:100%;
    font-size: 2rem;
    margin-bottom: 0.2em;
    }
    .topicsbox dl dt span {
    display: inline-block;
    margin-right: 1em;
    }
    .topicsbox dl dd span {
    margin-bottom: 1em;
    }
    #newsfootermenu {
    }
    #newsfootermenu ul li {
    display: inline-block;
    width: auto;
    }
    #newsfootermenu ul li a {
    font-size: 1.2rem;
    }
    .img_oqeanous {
    float: none;
    width: 100%;
    margin-right: 0;
    text-align:right;
    display:block;
    }
    .img_oqeanous img {
    width: 150px;
    }
}