@charset "Shift_JIS";

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, dialog, figure, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}
em{
	font-style: inherit;
}
body {
    line-height:1;
}

article, aside, dialog, figure, footer, header,
hgroup, nav, section {
    display:block;
}

nav ul {
    list-style:none;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

a {
    margin:0;
    padding:0;
    border:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

mark {
    background-color:#ff9;
    color:#000;
    font-style:italic;
    font-weight:bold;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom:1px dotted #000;
    cursor:help;
}

table {
    border-collapse:collapse;
    border-spacing:0;
}

hr {
    display:block;
    height:1px;
    border:0;
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

input, select {
    vertical-align:middle;
}

img{
	vertical-align:middle;
}
/*リセットCSS - 終了*/

/*共通CSS*/
.cf:before,
.cf:after {
    content: " ";
    display: table;
}

.cf:after {
    clear: both;
}
a{
    color: #000000;
    text-decoration: none;
}
a:hover{
    text-decoration: underline;
}
a img {  
    -webkit-transition: 0.3s ease-in-out;  
       -moz-transition: 0.3s ease-in-out;  
         -o-transition: 0.3s ease-in-out;  
            transition: 0.3s ease-in-out;  
}  
a img:hover {  
    opacity: 0.6;  
    filter: alpha(opacity=60);  
}  
body {
    color: #2C2C2C;
    border-color: #2C2C2C;
}
.pc_only {
  display: block;
}
.sp_only {
  display: none;
}

.iblc {
    display: inline-block;
}


/* .wrapper */
.wrapper {
    min-width: 1280px;
    margin: 0 auto;
}

/* .header */
.header_wrapper {
    border-bottom: 1px solid #023499;
}
.header {
    padding: 30px;
    max-width: 1200px;
    margin: 0 auto;
}
.header > .logo {
    float: left;
}
.header .logo .header_img {
    display : inline-block;
}
.header .logo .header_img_sp {
    display: none;
}
.header .logo > a {
    display : block;
}
.header_right {
    float: right;
}
.header_right > ul {
    list-style:none;
    font-size: 0;
}
.header_right > ul > li {
    display: inline-block;
}
.header_right > ul > li > a {
    display : block;
}
.header_menu{
    display: none;
}
.header_menu_list_wrap{
  display:none;
}
.header_menu_list{
    display: none;
}

/* .footer */
.footer {
    position: relative;
    padding: 60px 0 0;
    font-size: 14px;
}
.footer_pagetop{
    position: absolute;
    top: -27px;
    left: 50%;
    margin-left: -27px;
}
.footer_pagetop img{
    width: 54px;
}
.footer_inner{
    max-width: 1280px;
    margin: 0 auto;
    padding-left: 30px;
    padding-right: 37px;
    box-sizing: border-box;
}
.footer_logo_wrapper {
    text-align: center;
}
.footer_logo {
    display : inline-block;
    text-align: center;
}
.footer_logo_sp {
    display: none;
}
.footer_left {
    float: left;
}
.footer_right {
    text-align: right;
}
.footer_link{
    display: table;
    width: 940px;
    margin-bottom: 45px;
}
.footer_link > li{
    display: table-cell;
    width:  331px;
    padding-left: 32px;
    border-left: 1px solid #cacaca;
    list-style: none;
    font-size: 15px;
}
.footer_link > li:first-child{
    width: 210px;
    padding-left: 0;
    border-left: none;
}
.footer_link > li .footer_link_ttl{
    margin-bottom: 20px;
    font-weight: bold;
    font-size: 17px;
    color: #00338f;
}
.footer_link > li .footer_link_ttl:last-child{
    margin-bottom: 0;
}
.footer_link > li .footer_link_ttl a{
    color: #00338f;
}
.footer_link > li .footer_link_subttl{
    margin-bottom: 20px;
}

.footer_link_sublist:after{
	content:"";
	display:table;
	clear:both;
}

.footer_link_sublist > li{
	float:left;
	margin-left:2em;
	list-style: none;
}
.footer_link_sublist > li:first-child{
	margin-left:0;
}
.footer_arrow{
	position:relative;
	display:inline-block;
	padding-left:1em;
}
.footer_arrow:after {
    content: '';
    width: 5px;
    height: 5px;
    border: 0px;
    border-top: solid 1px #00338f;
    border-right: solid 1px #00338f;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -4px;
}
.footer_copy {
    padding-top: 26px;
    padding-bottom: 26px;
    border-top: 1px solid #e4e4e4;
}


/* .title_box */
.title_box {
    background: #fff;
    text-align: center;
    padding: 50px 0;
}
.title_box h1 {
    font-size: 32px;
}

/* .content */
.content {
    background: #efefef;
}
.content .content_inner {
    max-width: 860px;
    margin: 0 auto;
    padding-top: 60px;
}
.content h2 {
    font-size: 24px;
    color: #003399;
    margin-bottom: 30px;
}

.content h2 .small {
    font-size: 18px;
}

/* .link_area01 */
.link_area01{
    background: #003399;
    padding: 25px 0;
    text-align: center;
}
.link_area01 li{
    display: inline-block;
    margin-right: 50px;
    padding-right: 50px;
    border-right: 1px solid #ffffff;
}
.link_area01 li:last-child{
    margin-right: 0;
    padding-right: 0;
    border-right: none;
}
.link_area01 li a{
    color: #ffffff;
    font-size: 18px;
    font-weight: bold;
}

/* .link_area02 */
.link_area02{
    background: #000066;
    padding: 25px 0;
    text-align: center;
}
.link_area02 li{
    display: inline-block;
    margin-right: 50px;
    padding-right: 50px;
    border-right: 1px solid #ffffff;
}
.link_area02 li:last-child{
    margin-right: 0;
    padding-right: 0;
    border-right: none;
}
.link_area02 li a{
    color: #ffffff;
    font-size: 18px;
    font-weight: bold;
}

/* .link_area03 */
.link_area03{
    border-top: 1px solid #4f90c8;
    background: #4f90c8;
    padding: 25px 0;
    text-align: center;
    margin-top: -1px;
}
.link_area03 li{
    display: inline-block;
    margin-right: 50px;
    padding-right: 50px;
    border-right: 1px solid #ffffff;
}
.link_area03 li:last-child{
    margin-right: 0;
    padding-right: 0;
    border-right: none;
}
.link_area03 li a{
    color: #ffffff;
    font-size: 18px;
    font-weight: bold;
}

/* .btn_type01 */
.btn_type01{
    width: 500px;
    margin: 0 auto;
    text-align: center;
}
.btn_type01 a{
    display: block;
    position: relative;
    padding: 20px 0 18px;
    background: #003399;
    color: #ffffff;
    font-size: 24px;
    font-weight: bold;
    -webkit-transition: 0.3s ease-in-out;  
       -moz-transition: 0.3s ease-in-out;  
         -o-transition: 0.3s ease-in-out;  
            transition: 0.3s ease-in-out;  
}
.btn_type01 a:hover{
    opacity: 0.6;
    text-decoration: none;
}
.btn_type01 a:after{
    content: '';
    width: 9px;
    height: 9px;
    border: 0px;
    border-top: solid 1px #ffffff;
    border-right: solid 1px #ffffff;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    left: 95.6%;
    margin-top: -5px;
}

/* .btn_type02 */
.btn_type02{
    width: 500px;
    margin: 0 auto;
    text-align: center;
}
.btn_type02 a{
    display: block;
    position: relative;
    padding: 20px 0 18px;
    background: #000066;
    color: #ffffff;
    font-size: 24px;
    font-weight: bold;
    -webkit-transition: 0.3s ease-in-out;  
       -moz-transition: 0.3s ease-in-out;  
         -o-transition: 0.3s ease-in-out;  
            transition: 0.3s ease-in-out;  
}
.btn_type02 a:hover{
    opacity: 0.6;
    text-decoration: none;
}
.btn_type02 a:after{
    content: '';
    width: 9px;
    height: 9px;
    border: 0px;
    border-top: solid 1px #ffffff;
    border-right: solid 1px #ffffff;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    left: 95.6%;
    margin-top: -5px;
}

/* .btn_type03 */
.btn_type03{
    width: 500px;
    margin: 0 auto;
    text-align: center;
}
.btn_type03 a{
    display: block;
    position: relative;
    padding: 20px 0 18px;
    background: #4f90c8;
    color: #ffffff;
    font-size: 24px;
    font-weight: bold;
    -webkit-transition: 0.3s ease-in-out;  
       -moz-transition: 0.3s ease-in-out;  
         -o-transition: 0.3s ease-in-out;  
            transition: 0.3s ease-in-out;  
}
.btn_type03 a:hover{
    opacity: 0.6;
    text-decoration: none;
}
.btn_type03 a:after{
    content: '';
    width: 9px;
    height: 9px;
    border: 0px;
    border-top: solid 1px #ffffff;
    border-right: solid 1px #ffffff;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    left: 95.6%;
    margin-top: -5px;
}


@media screen and (max-width: 786px) {
    .pc_only {
        display: none;
    }
    .sp_only {
        display: block;
    }
    /* .wrapper */
    .wrapper {
        width: auto;
        margin: 0 auto;
        min-width: 0;
    }

    /* .header */
    .header {
        position: relative;
        z-index: 10;
        padding: 14px 15px 10px 15px;
    }
    .header .logo {
        float: left;
        width: 85%;
        max-width: 247px;
    }
    .header .logo .header_img {
        display: none;
    }
    .header .logo a{
        width: 100%;
    }
    .header .logo .header_img_sp {
        width: 100%;
        height: auto;
        display: inline-block;
    }
    .header .logo > a {
        display : block;
    }
    .header_right {
        display: none;
    }
    .header_right > ul {
        list-style:none;
        font-size: 0;
    }
    .header_right > ul > li {
        display: none;
    }
    .header_right > ul > li > a {
        display : block;
    }
    .header_menu{
        display: block;
        float: right;
    }
    .header_menu .header_menu_icon{
        margin-top: 4px;
        cursor: pointer;
    }
    .header_menu .header_menu_icon .open{
        display: block;
    }
    .header_menu .header_menu_icon .close{
        display: none;
    }
    .header_menu .header_menu_icon.active .open{
        display: none;
    }
    .header_menu .header_menu_icon.active .close{
        display: block;
    }
    .header_menu .header_menu_icon img{
        width: 30px;
    }
    .header_menu_list_wrap{
      display:block;
    }
    .header_menu_list{
        position: absolute;
        top: 69px;
        left: 0px;
        width: 100%;
        background: #000;
        color: #fff;
        overflow: hidden;
        z-index: 10;
    }
    .header_menu_list > li{
        padding: 14px 15px;
        background: #00236c;
        border: 1px solid #4a5d83;
        list-style: none;
    }
    .header_menu_list > li a{
        display: block;
    }
    .header_menu_list > li .header_menu_ttl{
        font-weight: bold;
        font-size: 14px;
    }
    .header_menu_list > li .header_menu_ttl a{
        color: #ffffff;
    }
    .header_menu_list > li .header_menu_subttl{
        margin-top: 10px;
    }
    .header_menu_list > li .header_menu_subttl a{
        display: block;
        color: #ffffff;
        font-size: 12px;
    }
    .header_menu_list > li .header_menu_txt a{
        display: block;
        color: #ffffff;
        font-size: 10px;
    }
    .header_menu_sublist {
	    display: table;
	    width: 100%;
	    table-layout: fixed;
	}
	.header_menu_sublist > li {
	    display: table-cell;
	    padding-left: 15px;
	    vertical-align: top;
	    list-style:none;
	}
	.header_menu_sublist > li .header_menu_subttl a{
		display:inline-block;
	}
	.header_menu_sublist > li:first-child{
		padding-left:0;
	}
	.header_arrow {
	    position: relative;
	    display: inline-block;
	    padding-left: 1em;
	}
	.header_arrow:after {
	    content: '';
	    width: 4px;
	    height: 4px;
	    border-top: solid 1px #fff;
	    border-right: solid 1px #fff;
	    -ms-transform: rotate(45deg);
	    -webkit-transform: rotate(45deg);
	    transform: rotate(45deg);
	    position: absolute;
	    top: 50%;
	    left: 0;
	    margin-top: -3px;
	    margin-left: -2px;
	}
    .header_bg_ovly {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 1;
        width: 100%;
        height: 100%;
        background-color: rgba(255,255,255,.6);
        cursor: pointer;
    }
  .header_bg_ovly.active{
        display: block;
  }
    /* .footer */
    .footer {
        padding: 25px 0 0;
        font-size: 10px;
    }
    .footer_pagetop{
        position: absolute;
        top: -20px;
        left: 50%;
        margin-left: -20px;
        cursor: pointer;
    }
    .footer_pagetop img{
        width: 40px;
    }
    .footer_inner{
      max-width: 100%;
      padding-left: 0;
      padding-right: 0;
    }
    .footer_left {
        float: none;
    }
    .footer_right {
        float: none;
    }
    .footer_logo {
        display: none;
    }
    .footer_logo_sp {
        width: 106px;
        height: auto;
        display : inline-block;
        padding: 24px 0 22px 0;
    }
    .footer_link{
        display: block;
        width: 100%;
        margin-bottom: 0;
    }
    .footer_link > li{
        display: block;
        width: 100%;
        padding-left: 0;
        border-left: none;
        font-size: 14px;
        box-sizing: border-box;
    }
    .footer_link > li:first-child{
        width: 100%;
    }
    .footer_link .footer_link_list{
        border-bottom: 1px solid #bdbfc0;
        padding: 13px 15px;
    }
    .footer_link > li .footer_link_ttl{
       margin-bottom: 0;
        font-size: 15px;
  }
    .footer_link > li .footer_link_ttl a{
        display: block;
    }
    .footer_link > li .footer_link_subttl{
        margin: 13px 0 0;
    }
    .footer_link > li .footer_link_subttl a{
        display: block;
    }
    .footer_copy {
        padding: 0 0 18px 0;
        border-top: none;
    }
    .footer_copy .footer_left{
        padding: 10px 15px ;
        line-height: 25px;
        border-bottom: 1px solid #bdbfc0;
    }
    .footer_copy .footer_left a{
        display: block;
  }
    .footer_copy .footer_right{
        text-align: center;
    }
    .footer_link_sublist:after{
    	content:normal;
    }
    .footer_link_sublist{
    	display:table;
    	width:100%;
    	table-layout:fixed;
    }
	.footer_link_sublist > li{
		display:table-cell;
		float:none;
		margin-left:0;
		padding-left:15px;
		vertical-align:top;
	}
	.footer_link_sublist > li:first-child{
		width: 34%;
		padding-left:0;
	}
	
	.footer_arrow{
		padding-left:0.8em;
	}
	.footer_arrow:after{
		width:4px;
		height:4px;
		margin-left: -2px;
		border-top: solid 1px #333;
    	border-right: solid 1px #333;
	}

    /* .title_box */
    .title_box {
        padding: 25px 0;
    }
    .title_box h1 {
        font-size: 18px;
    }


    /* .content */
    .content {
        padding: 0 15px;
    }
    .content .content_inner {
        padding-top: 30px;
    }
    .content h2 {
        font-size: 16px;
        margin-bottom: 12px;
    }

    .content h2 .small {
        font-size: 11px;
    }
    /* .link_area01 */
    .link_area01{
        display: none;
    }
    
    /* .link_area02 */
    .link_area02{
        display: none;
    }
    /* .link_area03 */
    .link_area03{
        display: none;
    }


  /* .btn_type01 */
  .btn_type01{
      width: 100%;
  }
  .btn_type01 a{
      padding: 15px 0 13px;
      font-size: 15px;
  }
  .btn_type01 a:after{
      content: '';
      width: 6px;
      height: 6px;
      border: 0px;
      border-top: solid 1px #ffffff;
      border-right: solid 1px #ffffff;
      -ms-transform: rotate(45deg);
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
      position: absolute;
      top: 50%;
      left: 95.6%;
      margin-top: -4px;
  }
  
  /* .btn_type02 */
  .btn_type02{
      width: 100%;
  }
  .btn_type02 a{
      padding: 15px 0 13px;
      font-size: 15px;
  }
  .btn_type02 a:after{
      content: '';
      width: 6px;
      height: 6px;
      border: 0px;
      border-top: solid 1px #ffffff;
      border-right: solid 1px #ffffff;
      -ms-transform: rotate(45deg);
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
      position: absolute;
      top: 50%;
      left: 95.6%;
      margin-top: -4px;
  }
  /* .btn_type03 */
  .btn_type03{
      width: 100%;
  }
  .btn_type03 a{
      padding: 15px 0 13px;
      font-size: 15px;
  }
  .btn_type03 a:after{
      content: '';
      width: 6px;
      height: 6px;
      border: 0px;
      border-top: solid 1px #ffffff;
      border-right: solid 1px #ffffff;
      -ms-transform: rotate(45deg);
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
      position: absolute;
      top: 50%;
      left: 95.6%;
      margin-top: -4px;
  }
}