@charset "UTF-8";

@media all and (max-width: 736px) {
    .pcOnly {
        display: none;
    }
}

@media all and (min-width: 737px) {
    .spOnly {
        display: none;
    }
}

body {
/*    background-color: #f4f4f4;*/
    font-family: 'Noto Sans JP', "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, Sans-Serif;
	overflow-x: hidden;
	color: #444;
	line-height: 1.8;
}
a.nrm-link { color: #59bbeb; border-bottom: 1px dotted #59bbeb; display: inline !important; }
a.nrm-link:hover { border-bottom: 1px solid #59bbeb; }
a.nrm-link2 { color: #000; border-bottom: 1px solid #000; }
a.nrm-link2:hover { color: #777; border-bottom: 1px solid #777; }
a.nrm-link3 { font-weight: bold; }
a.nrm-link4 { color: #2a9dea; border-bottom: 1px solid #2a9dea; display: inline !important; }
a.nrm-link4:hover { border-bottom: none; background: #2a9dea; color: #fff; }

a { 
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease; }



_::-webkit-full-page-media, _:future, :root.mac .fs08 {
    font-size: 0.7em!important;
}

.left-3em::before {
    left: -3em!important;
}

.inner {
    max-width: 1080px;
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;
}

.inner-kv {
    max-width: 1080px;
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;
}

ruby > rt {
    font-size: 10%;
    margin-bottom: -1.1em;
    transform: translateY(1.5em);
}

[rb] {
    position: relative;
}

[rb]::before {
  content: attr(rb);
  position: absolute;
  top: -0.9em;
  left: -0.2em;
  right: -0.2em;
  font-size: 0.5em;
  text-align: center;
  white-space: nowrap;
  line-height: 1;
  text-indent: 0;
}

[rb_small] {
    position: relative;
}

[rb_small]::before {
  content: attr(rb_small);
  position: absolute;
  top: -0.8em;
  left: -0.8em;
  right: -0.2em;
  font-size: 0.5em;
  text-align: center;
  white-space: nowrap;
  line-height: 1;
  text-indent: 0;
}

[rb_narrow] {
    position: relative;
}

[rb_narrow]::before {
  content: attr(rb_narrow);
  position: absolute;
  top: -0.5em;
  left: -0.2em;
  right: -0.2em;
  font-size: 0.5em;
  text-align: center;
  white-space: nowrap;
  line-height: 1;
  text-indent: 0;
}

@media all and (-webkit-min-device-pixel-ratio:0){
    .win [rb_small]::before {
        left: -2.0em;
    }
    .mac [rb]::before {
        top: -2.0em;
    }
    .mac [rb_small]::before {
        top: -1.8em;
        left: -2.2em;
    }
    .chrome [rb_narrow]::before {
        font-size: 0.3em;
        top: -1.0em;
    }  
    .mac [rb_narrow]::before {
        font-size: 0.3em;
        top: -2.2em;
    }  
}

_::-webkit-full-page-media, _:future, :root.mac [rb]::before {
        top: -1.0em;
}

_::-webkit-full-page-media, _:future, :root.mac [rb_small]::before {
        top: -1.2em;
        left: -1.2em;
}

_::-webkit-full-page-media, _:future, :root.mac [rb_narrow]::before {
        top: -0.5em;
        font-size: 0.5em;
}

@media all and (max-width: 414px) {
    [rb_narrow]::before {
      top: -1.2em;
      left: -0.2em;
      right: -0.2em;
      font-size: 0.5em;
    }
}

@media all and (max-width: 736px) {
    .inner-kv {
        width: 100%;
        padding: 0;
    }
}

.mb1e {
    margin-bottom: 1em;
}

.right.note {
    margin-top: 10px;
    margin-bottom: 10px;
}

.right.note span {
    display: inline-block;
    font-size: 14px;
    color: #ff1a00;
    border: 1px solid #ff1a00;
    padding: 5px 1em;
}

#footer {
    padding: 35px 0 30px;
    border-left: 17px solid #e1242a;
    background:-webkit-gradient(linear, left top, right top, from(#fff), to(#ddd));
    background:-webkit-linear-gradient(left, #fff, #ddd);
    background:-moz-linear-gradient(left, #fff, #ddd);
    background:-o-linear-gradient(left, #fff, #ddd);
    background:linear-gradient(to right, #fff, #ddd);
    font-family: Noto Sans CJK JP, Open Sans, sans-serif;
    color: #000;
}

#footer ul {
    font-size: 15px;
    line-height: 20px;
    overflow: hidden;
}


@media all and (max-width: 736px) {
#footer { background: #fff; }
    .right.note span {
        padding: 5px 10px;
    }
}

@media all and (min-width: 737px) {
    .right.note {
        text-align: right;
    }
}

a {
    color: #333;
    -webkit-transition: all 0.1s;
    -moz-transition: all 0.1s;
    -ms-transition: all 0.1s;
    -o-transition: all 0.1s;
    transition: all 0.1s;
    text-decoration: none;
}

.link_normal {
    color: #005689;
    -webkit-transition: all 0.1s;
    -moz-transition: all 0.1s;
    -ms-transition: all 0.1s;
    -o-transition: all 0.1s;
    transition: all 0.1s;
    text-decoration: underline;
}

img {
    vertical-align: bottom;
    max-width: 100%;
}


.drawer-hamburger {
    display: none;
}


@media all and (min-width: 737px) {
    .drawer-nav {
        position: relative;
        top: 0;
        left: 0;
    }
    
    #footer {
        padding: 16px 0 24px;
        border-left: 17px solid #e1242a;
        font-family: Noto Sans CJK JP, Open Sans, sans-serif;
        color: #000;
    }

    #footer .footer-inner {
        margin: 0 auto;
        padding: 0 20px;
        width: 100%;
    }

    #footer ul {
        font-size: 15px;
        line-height: 20px;
        overflow: hidden;
    }

    #footer ul li {
        float: left;
        list-style-type: none;
        font-size: 13px;
    }   

    #footer ul li ~ li::before {
        margin: 0 0.5em;
        content: "|";
    }    
    #footer p {
        margin-top: 16px;
        font-size: 11px;
        line-height: 18px;
    }
}

@media all and (min-width: 737px) {
    header .globalnav {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-align-items: stretch;
        -moz-align-items: stretch;
        -ms-align-items: stretch;
        -o-align-items: stretch;
        align-items: stretch;
    }
    header .globalnav li {
        width: 28%;
		height: 60px;
    }
    header .globalnav li:first-child { width: 16%; }
    header .globalnav:before{
	content: "";
	width: 1px;
	height: 80%;
	position: absolute;
	top:10%;
	left: 0;
    border-left: 1px solid #dee3e5;
	z-index: -1;
    }
	header .globalnav li:last-child a:after{
	content: "";
	width: 1px;
	height: 80%;
	position: absolute;
	top:10%;
	right: 0;
    border-right: 1px solid #dee3e5;
	z-index: -1;
    }
    header .globalnav li a {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 100%;
        font-size: 16px;
		font-weight: 500;
        box-sizing: border-box;
		position: relative;
    }
	header .globalnav li a:before {
	content: "";
	width: 1px;
	height: 80%;
	position: absolute;
	top:10%;
	right: -1px;
    border-right: 1px solid #dee3e5;
	z-index: -1;
    }
    header .globalnav li a:hover,
    header .globalnav li a.current {
        background-color: #59bbeb;
        color: #fff;
    }
    header .globalnav li span {
        line-height: 1.385;
        padding: 10px 10px !important;
		display: block;
        text-align: center;
    }
}

@media all and (max-width: 736px) {
.drawer-nav { padding: 0 20px; }
    .header-contents {
        background-color: #fff;
        position: relative;
        z-index: 1000;
    }
    .drawer-hamburger {
        z-index: 3;
        display: block;
        width: 125px;
        height: 47px;
        box-sizing: border-box;
        background-color: #59bbeb;
        color: #fff;
        padding: 0;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        border-radius: 4px;
    }
    .drawer-hamburger > span {
        display: inline-block;
        vertical-align: middle;
    }
    .drawer-hamburger:hover {
        background-color: #59bbeb;
    }
    .drawer--top.drawer-open .drawer-nav {
        z-index: 999;
        top: 118px;
    }
    .drawer--top .drawer-hamburger,
    .drawer--top.drawer-open .drawer-hamburger {
        top: 19px;
        right: 8px;
        text-align: left;
        padding-left: 8px;
    }
    .drawer-hamburger-icon,
    .drawer-hamburger-icon:after,
    .drawer-hamburger-icon:before {
        width: 20px;
        height: 3px;
        background-color: #fff;
        -webkit-border-radius: 1.5px;
        -moz-border-radius: 1.5px;
        border-radius: 1.5px;
    }
    .drawer-hamburger-icon {
        margin-top: 0px;
        margin-right: 2px;
    }
    .drawer-hamburger-icon:before {
        top: -8px;
    }
    .drawer-hamburger-icon:after {
        top: 8px;
    }
    .sr-only {
        position: relative;
        width: 88px;
        height: 42px;
        padding-top: 7px;
        font-size: 14px;
        text-align: center;
        color: #fff;
		font-weight: 700;
    }
    .drawer-open .sr-only:before {
        content: '閉じる';
		position: relative;
		top: -2px;
		left: -6px;		
    }
    .drawer-open .sr-only span {
        display: none;
    }
    
    header .logo_wrapper ul {
        display: none;
    }
    
    #footer {
        padding: 13px 10px 13px 25px;
        border-left: 8px solid #e1242a;
    }

    #footer .footer-inner {
        padding: 0;
        width: auto;
    }

    #footer ul {
        font-size: 12px;
    }
    
    #footer p {
        margin-top: 15px;
        font-size: 12px;
    }

    #footer ul li {
        float: left;
        list-style-type: none;    
    }   

    #footer ul li ~ li::before {
        margin: 0 0.5em;
        content: "|";
    }    

    
    
    
}

@media all and (max-width: 420px) {
    header .inner {
        padding-left: 10px;
        padding-right: 10px;
    }
    .drawer-hamburger {
        width: 82px;
        height: 32px;
    }
    .drawer--top .drawer-hamburger,
    .drawer--top.drawer-open .drawer-hamburger {
        top: 21px;
    }
    .drawer-hamburger-icon,
    .drawer-hamburger-icon:after,
    .drawer-hamburger-icon:before {
        width: 12px;
        height: 2px;
        background-color: #fff;
        -webkit-border-radius: 1.5px;
        -moz-border-radius: 1.5px;
        border-radius: 1.5px;
    }
    .drawer-hamburger-icon { margin-top: -3px; }
	    .drawer-hamburger-icon:before {
        top: -4px;
    }
    .drawer-hamburger-icon:after {
        top: 4px;
    }
	.drawer-open .sr-only:before {
	position: relative;
	top:-2px;
	left: -3px; }
    .sr-only {
        position: relative;
        width: 50px;
        height: 28px;
        padding-top: 0;
        font-size: 12px;
        text-align: center;
        color: #fff;
		font-weight: 700;
    }
    .drawer--top.drawer-open .drawer-nav {
        top: 106.5px;
    }

}

header {
    background-color: #fff;
	border-bottom: 1px solid #dbdcdc;
}

@media all and (min-width: 737px) {
    header {
        border-top: 14px solid #e1242a;
	border-bottom: 1px solid #dbdcdc;     
    }
}

@media all and (max-width: 736px) {
    header {
        position: fixed;
        z-index: 990;
        width: 100%;
    }
	header .inner { padding: 0 !important; }
    header:before {
        content: '';
        width: 100%;
        height: 7px;
        background-color: #e1242a;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 999;
    }
	.header-contents { padding: 0 20px; }
}

header .logo_wrapper {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-flow: column;
}

@media all and (min-width: 737px) {
    header .logo_wrapper {
        margin-bottom: 15px;
        position: relative;
    }
    
    header .logo_wrapper ul {
        position: absolute;
        right: 0;
        bottom: 10px;
    }
    
    header .logo_wrapper ul li {
        display: inline-block;
        list-style: none;
        background: none;
        margin: 0 0 0 10px;
        font-size: 13px;
    }
    
    header .logo_wrapper ul li::before {
        content: "";
		width: 7px; height: 11px;
		background-image: url(../../assets/img/common/ico-arrow-right.jpg);
		background-size: 7px 11px;
		background-repeat: no-repeat;
		background-position: center center;
        display: inline-block;
    }
    
    header .logo_wrapper ul li a:hover {
        color: #e1242a;
    }

}

header .logo_wrapper .logo {
    margin-right: auto;
}

@media all and (max-width: 736px) {
    header .logo_wrapper .logo a {
        padding: 5px 10px 10px;
        margin-left: -10px;
		margin-top: -8px
    }
}

@media all and (max-width: 736px) {
    header .logo_wrapper {
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        -o-flex-direction: column;
        flex-direction: column;
    }
}

header .logo_comp a {
    display: block;
    font-size: 0;
    line-height: 0;
    padding: 5px 0 17px;
}

header .logo_comp a img {
    width: 200px;
    height: auto;
}

.index_page header .logo_comp a { padding: 20px 0 28px; }
.index_page header .logo_comp a img { width: 320px !important; }

header .logo_comp {
    margin-bottom: -5px;
    padding-top: 10px;
}


@media all and (min-width: 737px) {
    header .logo_comp {
        width: 320px;
        margin-bottom: 10px;        
            
    }
	.index_page header .logo_comp { width: 320px !important; margin: 14px 0 -6px !important; }
	.index_page header .logo_comp a { padding: 5px 0 20px; }
    
    header .logo_comp a {
        width: 100%;
		padding: 20px 0 0;
    }
    header .logo_comp a img {
        display: none;
        width: 100%;
        height: auto;
    }
    header .logo_comp a:before {
        content: '';
        background-image: url(../../assets/img/common/logo-com.png);
        background-size: contain;
        background-repeat: no-repeat;
        display: block;
        vertical-align: bottom;
        width: 100%;
        height: 19.5px;
    }
    .index_page header .logo_comp a:before { height: 24px; }
}


@media all and (max-width: 420px) {
header .logo_comp a {
    display: block;
    font-size: 0;
    line-height: 0;
    padding: 5px 0 15px;
}

header .logo_comp a img {
    width: 180px;
    height: auto;
}
.index_page header .logo_comp a { padding: 15px 0 22px; }
.index_page header .logo_comp a img { width: 270px !important; }
}

header .logo a {
    display: block;
    font-size: 0;
    line-height: 0;
}

header .logo a img {
    width: 180px;
    height: auto;
}

@media all and (min-width: 737px) {
    header .logo a img {
    width: 210px;
    height: auto;
    }
}


@media all and (max-width: 420px) {
header .logo a img {
    width: 160px;
    height: auto;
} }

.drawer-open header {
    border-bottom: 1px solid #ccc;
}



main {
    background-color: #fff;
}

@media all and (max-width: 736px) {
    main {
        padding-top: 118px;
        background-color: inherit;
    }
	.index_page main { padding-top: 93px !important; }
	.link_anch { margin-top:-52px; padding-top:52px; }
}

@media all and (max-width: 420px) {
    main {
        padding-top: 106.5px;
    }
	.index_page main { padding-top: 76px !important; }
	.link_anch { margin-top:-40px; padding-top:40px; }
}

main .branch {
    background-color: #f2f2f2;
}

@media all and (max-width: 736px) {
    main .branch {
        background-color: #fff;
        border-top: 1px solid #d2d2d2;
        border-bottom: 1px solid #d2d2d2;
    }
}

main .branch ol {
    list-style-type: none;
    max-width: 1080px;
    margin: 0 auto;
    padding: 5px 30px;
}

main .branch ol li {
    display: inline-block;
    font-size: 12px;
    line-height: 1;
}

main .branch ol li + li:before {
    content: '>';
    margin: 0 5px;
}

main .branch ol li a {
    font-size: 12px;
}

main .main-contents {
    padding-bottom: 20px;
}

@media all and (min-width: 737px) {
    main .main-contents {
        padding: 30px 0;
        background-color: #fff;
    }
}

main .main-contents .ttl-main {
    padding: 6px 10px;
    font-size: 18px;
    border-left: 4px solid #ef7622;
    border-bottom: 1px solid #ef7622;
    line-height: 1em;
}

@media all and (min-width: 737px) {
    main .main-contents .ttl-main {
        padding: 8px 15px;
        font-size: 25px;
        border-left: 6px solid #ef7622;
    }
}

main .main-contents .contentsnav {
    margin-top: 20px;
    background-color: #f2f2f2;
}

@media all and (max-width: 736px) {
    main .main-contents .contentsnav {
        display: none;
    }
}

main .main-contents .contentsnav ul {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    list-style-type: none;
    padding: 10px 0;
}

main .main-contents .contentsnav ul li {
    box-sizing: border-box;
    padding-left: 2.0408163%;
    margin: 10px 0;
}

@media all and (max-width: 736px) {
    main .main-contents .contentsnav ul li {
        width: 33%;
    }
}

main .main-contents .contentsnav ul li a {
    color: #3260be;
    display: block;
    text-indent: -10px;
    margin-left: 30px;
    font-size: 15px;
    line-height: 1.333;
}

main .main-contents .contentsnav ul li a:before {
    content: url(/assets/img/common/ico-arrow-down.png);
    display: inline-block;
    vertical-align: middle;
    position: relative;
    left: -10px;
}

main .main-contents section {
    margin-top: 40px;
    overflow: hidden;
    position: relative;
}

main .main-contents section .sec-inner {
    margin-top: 20px;
}

@media all and (max-width: 736px) {
    main .main-contents section {
        margin-top: 10px;
        background-color: #fff;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        border-radius: 4px;
    }
    main .main-contents section .sec-inner {
        display: none;
        margin: 0 15px;
        padding-bottom: 15px;
        padding-top: 10px;
        border-top: 1px solid #888;
    }
    main .main-contents section .sec-inner .close {
        display: block;
        background-color: #dedede;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        border-radius: 4px;
        text-align: center;
        padding: 15px 0;
        margin-top: 20px;
    }
}

main .main-contents section .description {
    background-color: #f2f2f2;
    padding: 15px 20px;
}

main .main-contents section .description p {
    margin: 0;
}

@media all and (max-width: 736px) {
    main .main-contents section .description {
        font-size: 14px;
        padding: 10px;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        border-radius: 4px;
    }
}

main .main-contents section .tb-ptn01,
main .main-contents section .tb-ptn02 {
    width: 100%;
    overflow: hidden;
    border-collapse: separate;
    border-spacing: 0;
}

main .main-contents section .tb-ptn01 th,
main .main-contents section .tb-ptn02 th {
    background-color: #fffeee;
    text-align: left;
    padding: 20px;
    font-weight: normal;
    border-left: 1px solid #ef7622;
    border-bottom: 1px solid #ef7622;
    border-right: 1px solid #ef7622;
    vertical-align: top;
    width: 50%;
}

@media all and (max-width: 736px) {
    main .main-contents section .tb-ptn01 th {
        padding: 10px;
        font-size: 13px;
    }
}

main .main-contents section .tb-ptn01 td {
    padding: 20px;
    border-bottom: 1px solid #ef7622;
    border-right: 1px solid #ef7622;
    vertical-align: top;
    width: 50%;
}
main .main-contents section .tb-ptn02 td {
    padding: 20px;
    border-bottom: 1px solid #ef7622;
    border-right: 1px solid #ef7622;
    vertical-align: top;
}
main .main-contents section .tb-ptn02 th,
main .main-contents section .tb-ptn02 td {
    padding: 10px;
	font-size: 13px;
	}

main .main-contents section .tb-ptn01 td .url {
    display: inline-block;
    margin-right: 20px;
}

main .main-contents section .tb-ptn01 td .qr {
    display: inline-block;
}

@media all and (max-width: 736px) {
    main .main-contents section .tb-ptn01 td .qr {
        display: none;
    }
}

@media all and (max-width: 736px) {
    main .main-contents section .tb-ptn01 td {
        font-size: 13px;
    }
    main .main-contents section .tb-ptn01 td.flex_s {
      display: flex;
	  align-items: center;      
	}
}

main .main-contents section .tb-ptn01 tr:first-child th,
main .main-contents section .tb-ptn02 tr:first-child th {
    border-top: 1px solid #ef7622;
    -webkit-border-top-left-radius: 10px;
    -moz-border-top-left-radius: 10px;
    -ms-border-top-left-radius: 10px;
    -o-border-top-left-radius: 10px;
    border-top-left-radius: 10px;
}

@media all and (max-width: 736px) {
    main .main-contents section .tb-ptn01 tr:first-child th,
	main .main-contents section .tb-ptn02 tr:first-child th {
        -webkit-border-top-left-radius: 4px;
        -moz-border-top-left-radius: 4px;
        -ms-border-top-left-radius: 4px;
        -o-border-top-left-radius: 4px;
        border-top-left-radius: 4px;
    }
    
    
}

main .main-contents section .tb-ptn01 tr:first-child td,
main .main-contents section .tb-ptn02 tr:first-child td {
    border-top: 1px solid #ef7622;
    -webkit-border-top-right-radius: 10px;
    -moz-border-top-right-radius: 10px;
    -ms-border-top-right-radius: 10px;
    -o-border-top-right-radius: 10px;
    border-top-right-radius: 10px;
}

@media all and (max-width: 736px) {
    main .main-contents section .tb-ptn01 tr:first-child td,
    main .main-contents section .tb-ptn02 tr:first-child td {
        -webkit-border-top-right-radius: 4px;
        -moz-border-top-right-radius: 4px;
        -ms-border-top-right-radius: 4px;
        -o-border-top-right-radius: 4px;
        border-top-right-radius: 4px;
    }
}

main .main-contents section .tb-ptn01 tr:last-child th,
main .main-contents section .tb-ptn02 tr:last-child th {
    -webkit-border-bottom-left-radius: 10px;
    -moz-border-bottom-left-radius: 10px;
    -ms-border-bottom-left-radius: 10px;
    -o-border-bottom-left-radius: 10px;
    border-bottom-left-radius: 10px;
}

@media all and (max-width: 736px) {
    main .main-contents section .tb-ptn01 tr:last-child th,
    main .main-contents section .tb-ptn02 tr:last-child th {
        -webkit-border-bottom-left-radius: 4px;
        -moz-border-bottom-left-radius: 4px;
        -ms-border-bottom-left-radius: 4px;
        -o-border-bottom-left-radius: 4px;
        border-bottom-left-radius: 4px;
    }
}

main .main-contents section .tb-ptn01 tr:last-child td,
main .main-contents section .tb-ptn02 tr:last-child td {
    -webkit-border-bottom-right-radius: 10px;
    -moz-border-bottom-right-radius: 10px;
    -ms-border-bottom-right-radius: 10px;
    -o-border-bottom-right-radius: 10px;
    border-bottom-right-radius: 10px;
}

@media all and (max-width: 736px) {
    main .main-contents section .tb-ptn01 tr:last-child td,
    main .main-contents section .tb-ptn02 tr:last-child td	 {
        -webkit-border-bottom-right-radius: 4px;
        -moz-border-bottom-right-radius: 4px;
        -ms-border-bottom-right-radius: 4px;
        -o-border-bottom-right-radius: 4px;
        border-bottom-right-radius: 4px;
    }
}

main .main-contents .ttl-sec {
    font-size: 22px;
    padding-bottom: 2px;
    border-bottom: 1px solid #888;
    position: relative;
}

@media all and (max-width: 736px) {
    main .main-contents .ttl-sec {
        font-size: 16px;
        padding: 15px;
        padding-right: 40px;
        border-bottom: none;
        line-height: 1.25;
    }
    main .main-contents .ttl-sec:after {
        content: '';
        display: block;
        width: 15px;
        height: 15px;
        background: url(/assets/img/common/ico-plus.png) no-repeat 50% 50%;
        background-size: 15px 15px;
        position: absolute;
        right: 20px;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        -o-transform: translateY(-50%);
        transform: translateY(-50%);
    }
    main .main-contents .ttl-sec.open:after {
        background-image: url(/assets/img/common/ico-minus.png);
        background-size: 15px 2px;
    }
}

main .main-contents .ttl-sub {
    clear: both;
    margin-top: 30px;
    font-size: 18px;
}

main .main-contents .ttl-sub span {
    font-weight: normal;
}


@media all and (max-width: 736px) {
    main .main-contents .ttl-sub {
        font-size: 16px;
        margin-top: 20px;
    }
}

main .main-contents .ttl-sub:before {
    content: '';
    display: inline-block;
    width: 14px;
    height: 14px;
    background-color: #ef7622;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    margin-right: 6px;
}

@media all and (max-width: 736px) {
    main .main-contents .ttl-sub:before {
        width: 11px;
        height: 11px;
    }
}

main .main-contents .col-wrapper {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

main .main-contents .col-wrapper:first-child > * {
    margin-top: 0;
}


@media all and (max-width: 736px) {
    main .main-contents .col-wrapper {
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        -o-flex-direction: column;
        flex-direction: column;
    }
    
    main .main-contents .col-wrapper p small {
        margin: 10px 0 10px;
        display: block;
        text-indent: -38px;
        padding: 0 0 0 38px;
    }

    
    
    main .main-contents .wrapper_pcOnly {
        display: none;
    }


    main .main-contents .wrapper_spOnly {
        display: block;
    }
    
    
    
}



@media all and (min-width: 737px) {
    main .main-contents .col-wrapper {
        margin-top: 20px;
        margin-bottom: 20px;
    }
    main .main-contents .col-wrapper.col-separate {
        -webkit-justify-content: space-around;
        justify-content: space-around;
        -ms-flex-pack: space-around;
    }
    main .main-contents .col-wrapper .col-text {
        width: 65.306122%;
        position: relative;
    }
    
    main .main-contents .col-wrapper .col-text small {
        margin-top: 52px;
        display: block;
    }
    
    main .main-contents .col-wrapper .col-text span {
        display: block;
        width: 307px;
        background-color: #faac5e;
        padding: 11px;
        margin: 23px 0 13px 0;
        color: #fff;
        font-weight: bold;
    }
    
    main .main-contents .col-wrapper .col-text small {
        margin-top: 11px;
        letter-spacing: 0.1px;
    }
    
    main .main-contents .col-wrapper .col-text small em {
        font-style: normal;
        color: #ef7622;
        font-weight: bold;
        
    }

    
    
    main .main-contents .col-wrapper .col-text span:nth-of-type(2) {
        background-color: #9f84bd;
    }
    
    
    main .main-contents .wrapper_pcOnly {
        display: flex;
    }


    main .main-contents .wrapper_spOnly {
        display: none;
    }
    
    
}

@media all and (max-width: 736px) {
    main .main-contents .col-wrapper .col-text em {
        font-style: normal;
        display: block;
    }
    
    main .main-contents .col-wrapper .col-text em span {
        padding: 11px 11px 11px 0;
        margin: 23px 0 13px 0;
        color: #ef7622;
        font-weight: bold;
        background: transparent;
        display: inline;
    }

    
    
    main .main-contents .col-wrapper .col-text span {
        display: block;
        width: 307px;
        background-color: #faac5e;
        padding: 11px;
        margin: 23px 0 13px 0;
        color: #fff;
        font-weight: bold;
    }
    
    main .main-contents .col-wrapper .col-text small {
        margin-top: 11px;
        letter-spacing: 0.1px;
        text-indent: 0;
        padding: 0;
    }
    
    main .main-contents .col-wrapper .col-text small em {
        font-style: normal;
        color: #ef7622;
        display: inline;
        letter-spacing: -0.2px;
        font-weight: bold;
    }
    
    main .main-contents .col-wrapper .col-text span:nth-of-type(2) {
        background-color: #9f84bd;
    }
}


main .main-contents p {
    clear: both;
    margin-top: 10px;
}

main .main-contents .section_link {
    text-align: center; 
    margin-top: 40px;
}

main .main-contents .section_link a:hover {
    opacity: 0.5;
}



main .main-contents .with-bull {
    list-style-type: none;
    margin: 1em 0;
}

main .main-contents .with-bull li {
    text-indent: -1em;
    margin-left: 1em;
}

@media all and (max-width: 736px) {
    main .main-contents .with-bull li {
        font-size: 14px;
    }
}

main .main-contents .with-bull li:before {
    content: '・';
}

main .main-contents .with-bull02 {
    list-style-type: none;
    margin: 1em 0;
}

main .main-contents .with-bull02 li {
    text-indent: -15px;
    margin-left: 15px;
}

@media all and (max-width: 736px) {
    main .main-contents .with-bull02 li {
        font-size: 14px;
    }
}

main .main-contents .with-bull02 li:before {
    content: '';
    display: inline-block;
    width: 10px;
    height: 10px;
    background-color: #006399;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    margin-right: 5px;
    vertical-align: baseline;
}

main .main-contents .img-wide {
    margin: 20px 0;
}

main .main-contents .img-wide img {
    max-width: 100%;
}

main .main-contents .thumbnail-wrapper {
    max-width: 320px;
    margin: 10px 0 20px 20px;
    box-sizing: border-box;
}

@media all and (max-width: 736px) {
    main .main-contents .thumbnail-wrapper {
        margin: 10px 0;
    }
}

main .main-contents .thumbnail-wrapper .caption {
    font-size: 13px;
}

main .main-contents .thumbnail-wrapper .caption span {
    font-weight: bold;
    color: #ef7622;
}

@media all and (min-width: 737px) {
    main .main-contents .thumbnail-wrapper .thumbnail {
        border: 1px solid #dedede;
    }
}

main .main-contents .thumbnail-wrapper .thumbnail + .caption {
    margin-top: 20px;
}

main .main-contents .thumbnail-wrapper .thumbnail img {
    width: 100%;
    display: block;
}

main .main-contents .thumbnail-wrapper .thumbnail .note {
    font-size: 12px;
}

main .main-contents .thumbnail-wrapper .thumbnail .btn-zoom {
    text-align: center;
    background-color: #ffefe0;
    padding: 10px 0;
}

@media all and (max-width: 736px) {
    main .main-contents .thumbnail-wrapper .thumbnail .btn-zoom {
        display: none;
    }
}

main .main-contents .thumbnail-wrapper .thumbnail .btn-zoom a {
    cursor: pointer;
    display: inline-block;
    width: 200px;
    padding-top: 10px;
    padding-bottom: 10px;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    background-color: #ef7622;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
}

main .main-contents .thumbnail-wrapper .thumbnail .btn-zoom a:after {
    content: url(/assets/img/common/ico-zoom.png);
    display: inline-block;
    vertical-align: middle;
    margin-left: 15px;
    height: 27px;
}

main .main-contents .thumbnail-wrapper .thumbnail .btn-zoom a:hover {
    -webkit-opacity: .8;
    -moz-opacity: .8;
    -ms-opacity: .8;
    -o-opacity: .8;
    opacity: .8;
}

@media all and (min-width: 737px) {
    main .main-contents .thumbnail-wrapper .thumbnail-inner {
        padding: 10px;
    }
}

footer {
    background-color: #FFFFFF;
    font-size: 14px;
    padding-bottom: 10px;
}

footer nav {
    display: table;
    margin: 0 auto;
    max-width: 1080px;
    padding: 0 0 25px;
}

footer ul {
    display: table-cell;
    list-style-type: none;
    -webkit-justify-content: center;
    justify-content: center;
    -ms-flex-pack: center;
    margin-bottom: 1em;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    border-right: 1px #FA9B31 solid;
    width: 340px;
    padding: 0 0 0 40px;
}

footer ul:last-child {
    border-right: none;
}

footer ul a {
    line-height: 2;
}

footer .footer-inner {
    font-size: 12px;
}


@media all and (max-width: 736px) {
    footer ul li {
        margin: 0 0 2px;
    }
    footer ul li a {
        font-size: 15px;
    }
    footer ul li + li {
        border-left: 1px solid #333;
    }
    footer ul li a {
        display: block;
        margin: 0 1em;
        line-height: 1;
        color: #333;
        font-size: 13px;
    }
}

@media all and (min-width: 737px) {
    footer {
        padding: 0 0 0;
        border-top: 1px solid #d2d2d2;
		margin-top: -24px;
    }
    footer {
        border-top: none;
    }
    footer ul {
        padding: 0 0 0 16px;
    }
/*
    footer ul:last-child li:last-of-type {
        margin: 21px 0 0 0;
    }
*/
}

@media all and (max-width: 736px) {
    footer nav {
        display: inline;
        margin: 0;
        max-width: 100%;
    }
    footer ul {
        list-style-type: none;
        -webkit-justify-content: center;
        justify-content: center;
        -ms-flex-pack: center;
        margin-bottom: 1em;
        border-right: none;
        width: 100%;
        padding: 0;
        background-color: #fff;
        display: flex;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        -ms-flex-pack: flex-start;
        border-bottom: 1px solid #d4d4d4;
        margin-bottom: 0;
    }
    footer ul li {
        width: 50%;
        margin-bottom: -1px;
        border-bottom: 1px solid #d4d4d4;
        box-sizing: border-box;
        display: flex;
        align-items: center;    

    }
    footer ul li:nth-child(2n+1) {
        border-right: 1px solid #d4d4d4;
    }
    footer ul li a {
        font-size: 11px;
        display: block;
        margin: 0;
        padding: 15px 20px;
    }
    
    
    
    footer ul:first-of-type li a:before {
        content: '';
        display: inline-block;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 3px 0 3px 4px;
        border-color: transparent transparent transparent #333333;
        vertical-align: middle;
        margin-right: 6px;
        margin-left: -10px;
    }
    footer ul li + li {
        border-left: none;
    }
    
    footer ul:nth-of-type(2) {
        background-color: #f4f4f4;
    }
    
    footer ul:nth-of-type(2) li {
        text-align: center;
    }

    footer ul:nth-of-type(2) li a {
        width: 100%;
    }
    
    
}

footer .copyrights {
    background-color: #d4d4d4;
    font-weight: bold;
    text-align: center;
    line-height: 1;
    padding: 30px 0;
}

@media all and (max-width: 736px) {
    footer .copyrights {
        font-weight: normal;
        font-size: 9px;
    }
}

/*　ページTOP */
.page-top {
    display: none;
    position: fixed;
    bottom: 30px;
    right: 15px;
    z-index: 8;
}
.exlink { 
    position: fixed;
    bottom: 100px;
    right: 15px;
    z-index: 8; }
.page-top a {
    display: block;
    background-color: #59bbeb;
    text-align: center;
    color: #fff;
    font-size: 12px;
	font-weight: 500;
    text-decoration: none;
    padding: 13px 3px 15px;
	border-radius: 4px;
	letter-spacing: 0.5px;
	width: 150px !important;
}
.exlink a { 
    display: block;
    background-color: #fff;
    text-align: center;
    color: #333;
    font-size: 12px;
	font-weight: 700;
    text-decoration: none;
    padding: 7px 3px 9px;
	border-radius: 4px;
	width: 150px !important;
	border: 2px solid #e1242a;
	box-sizing: border-box; }
.exlink a i, .exlink a span { color: #e1242a; }
.exlink a span { font-size: 13px; }
.page-top a i, .exlink a i { margin-left: 5px; }
.page-top a:hover, .exlink a:hover {
	filter:alpha(opacity=80);
    -moz-opacity: 0.8;
    opacity: 0.8;
}
@media all and (max-width: 736px) {
main { padding-bottom: 80px; position: relative; }
.page-top { position: absolute; bottom: 15px; right: 15px; }
.exlink { position: absolute; bottom: 15px; left: 15px; right: auto; width: 230px !important; }
.page-top a { font-size: 10px; width: 120px !important; line-height: 1.4; padding: 18px 3px 20px; }
.exlink a span { font-size: 11px; }
.exlink a { font-size: 10px; line-height: 1.4; width: 170px !important; padding: 8px 3px 11px; }
}

.inview {
  transform: translateY(15px);
  /* 要素を透明にする */
  opacity: 0;
  /* 1秒かけて、変化させる */
  transition: transform 1.0s, opacity 1.0s;
}

.inview.show {
  transform: translateY(0);
  opacity: 1;
}


/*  二階層目ここから  */
figure {
    text-align: center;
    margin: 15px;
}
figure img {
    margin-top: 15px;
}

.bold {
    font-weight: bold;
}

.indent-1 {
    padding-left: 1em;
    text-indent: -1em;
}

.indent-1_wrap {
    margin: 0;
    padding: 0 0 0 1em;
}

.summary {
    font-size: 13px;
}

.detail p {
    margin-left: 20px;
    font-size: 13px;
}

.ruby {
    line-height: 1.8em;
}

.line-title {
    font-size: 23px;
    font-weight: bold;
    color: #FA9B31;
    text-align: center;
    border-bottom: solid 1px #FA9B31;
}

.line-title span {
    display: inline-block;
}

@media all and (max-width: 736px) {
    .line-title {
        font-size: 16px;
    }

    h3 {
        font-size: 16px;
    }
}


/* メニュー */
.submenu { display: none; }
.f-nav .submenu, .side-index .submenu, .index-nav .submenu { display: block; }
.drawer-nav .mv_icon, .index-nav .mv_icon { 
padding-left: 48px !important;
background-image: url("../img/common/mv_icon.jpg") !important;
background-repeat: no-repeat !important;
background-size: 26px auto !important;
background-position: 16px 4px !important; }
.index-nav { margin: 0px 0 -24px; padding-top: 0; padding-bottom: 32px;
    background:-webkit-gradient(linear, left top, left bottom, from(#eef8fd), to(#f9fcff));
    background:-webkit-linear-gradient(top, #eef8fd, #f9fcff);
    background:-moz-linear-gradient(top, #eef8fd, #f9fcff);
    background:-o-linear-gradient(top, #eef8fd, #f9fcff);
    background:linear-gradient(#eef8fd, #f9fcff);
    position: relative;
    z-index: 5;
}
.index-nav-head { height: 32px; width: 100%; background: #fff; margin-bottom: 32px; }
@media all and (max-width: 736px) {
.index-nav { margin-bottom: -80px; padding-bottom: 84px; margin-top: -6vw; }
.index-nav .menu-base { margin: 0 0 24px !important; }
.index-nav .menu-base:last-child { margin-bottom: 0 !important; }
}

.menu__item__link:after {
  content: '\f067' !important;
  display: block;
  font-family: "Font Awesome 5 Free";
  position: absolute;
  text-align: center;
}
.menu__item__link.on:after {
  content: '\f068' !important;
}
.ttl_menu:after { margin-top: -9px !important; }
.non_menu { pointer-events: none; }
.non_menu:after { content: none !important; }
.f-nav .ttl_menu:after { margin-top: -9px !important; margin-right: 9px; font-size: 110%; z-index: 3; }
.index-nav .ttl_menu:after { margin-right: 9px; }
.link-top a { color: #2a9dea; font-weight: 700; }
.link-top a i { margin-right: 8px; }
.menu-base { width: 100%; margin: 20px 0; border-radius: 10px; background: #fff; box-shadow: 0 0 5px rgba(133, 175, 200, 0.5); }

.side-index .menu-base, .index-nav .menu-base { box-shadow: 0 0 11px rgba(133, 175, 200, 0.7); }
.f-nav .menu-base { width: 100%; margin: 20px 0; background: none; box-shadow: none; }



.menu-base .cat-top { position: relative; font-size: 110%; }

.menu-base .cat-top a, .menu-base .cat-top span { display: block; padding: 10px 17px 12px; color: #fff; font-weight: 700; border-radius: 10px 10px 0 0; }
.non-link { pointer-events: none !important; }

.menu-base.menu-cat1 .cat-top a,
.menu-base.menu-cat1 .cat-top span {
background-color: #8bceeb;
background-size: 100% 100%;
background-position: center center;
background-image: url("../img/common/menu_ttl_sp.jpg"); }
@media all and (min-width: 737px) {
.menu-base.menu-cat1 .cat-top a, .menu-base.menu-cat1 .cat-top span { background-image: url("../img/common/menu_ttl_pc.jpg"); }
.side-index .menu-base.menu-cat1 .cat-top span { background-image: url("../img/common/side_ttl.jpg");
line-height: 1.4 !important; text-align: center;
background-color: #def4fb;
padding: 12px 8px !important;
color: #000; }
.f-nav .menu-base.menu-cat1 .cat-top a, .f-nav .menu-base.menu-cat1 .cat-top span { background-image: url("../img/common/menu_ttl_f.jpg"); font-size: 120%; }
.f-nav .menu-base .cat-top a, .f-nav .menu-base .cat-top span { padding: 12px 36px; border-bottom: 3px solid #364c5b; }
.f-nav .menu-base.menu-cat1 ul { display: flex; justify-content: space-between; flex-wrap: wrap; padding: 23px 40px; }
.index-nav .menu-base.menu-cat1 ul { display: flex; justify-content: space-between; flex-wrap: wrap; padding: 24px 32px; }
.f-nav .menu-base.menu-cat1 ul li, .index-nav .menu-base.menu-cat1 ul li { width: 48%; }
.f-nav .menu-base.menu-cat1 ul .half_menu, .index-nav .menu-base.menu-cat1 ul .half_menu { width: 48%; }
.f-nav .menu-base.menu-cat1 ul .half_menu li, .index-nav .menu-base.menu-cat1 ul .half_menu li { width: 100%; }
.f-nav .menu-base.menu-cat1 ul li ul { padding: 13px 18px; }
.f-nav .menu-base.menu-cat1 ul li ul li { width: 100%; font-size: 90%; }
.index-nav .menu-base.menu-cat1 ul li ul { padding: 16px 24px; }
.index-nav .menu-base.menu-cat1 ul li ul li { width: 100%; }
}

.menu-base.menu-cat1 .cat-top a:hover {
filter:alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8; }

.menu-base ul { list-style: none; padding: 12px; margin-bottom: 0; }
.menu-base ul li { margin-bottom: 12px; }
.menu-base ul li ul { padding: 8px; margin-bottom: 0; }
.menu-base ul li ul li { margin-bottom: 4px; }
.menu-base ul li:last-child,.menu-base ul li ul li:last-child { margin-bottom: 0; }
.menu-base ul li a,
.menu-base ul li > span { font-weight: 700; position: relative; display: block; padding: 12px 32px 14px 12px; line-height: 1.2; border-radius: 6px; }
.menu-base ul li a:after { content: "\f054"; font-family: "Font Awesome 5 Free"; position: absolute; top: 50%; margin-top: -12px; right: 12px; font-size: 100%; }
.menu-base.menu-cat1 ul li a { color: #2a9dea; background-color: #e4f3f5; }

.menu-base.menu-cat1 ul li a.ttl_menu { color: #000; background-color: #f4f4f4; }
.side-index .menu-base.menu-cat1 ul li a.ttl_menu { background-color: #e2f6fc; padding: 22px 12px; }

.index-nav .menu-base.menu-cat1 ul li a.ttl_menu { padding: 16px 18px; }

.f-nav .menu-base.menu-cat1 ul li a.ttl_menu { position: relative; padding: 0; }
.btn_shdw { color: #000; background-color: #fff; padding: 14px 22px; position: relative; z-index: 2; display: block; font-size: 105% !important; border-radius: 8px; }

.f-nav .menu-base.menu-cat1 ul li a.ttl_menu:before {
content: "";
width: 100%;
height: 100%;
display: block;
background: #dbdbdb;
border-radius: 8px;
position: absolute;
z-index: 1 !important;
top: 3px;
left: 0;
}
.f-nav .menu-base.menu-cat1 ul li a.ttl_menu:hover:before { background: #bbb; }
.ttl_menu span { font-size: 80%; }
.submenu li span { font-size: 70%; }
.side-index .submenu li span { font-size: 90%; position: relative; left: -10px; }
.f-nav .ttl_menu span, .f-nav .submenu li span { font-size: 90%; }
.menu-base.menu-cat1 ul li a:hover { background-color: #eef9fa; }
.menu-base.menu-cat1 ul li a.ttl_menu:hover { background-color: #fafafa; }
.side-index .menu-base.menu-cat1 ul li a.ttl_menu:hover { background-color: #e9f8fd; }
.f-nav .menu-base.menu-cat1 ul li a.ttl_menu:hover { background-color: #fdfdfd; }
.menu-base.menu-cat1 ul li a.ttl_menu:after { color: #2a9dea; }

.menu-base ul li ul li a { font-weight: 400; font-size: 90%; padding: 4px 24px 5px 16px; position: relative; border-bottom: 1px solid #fff; border-radius: 0; }
.f-nav .menu-base ul li ul li a { font-weight: 400; font-size: 100%; padding: 4px 24px 5px 16px; position: relative; border-bottom: 1px solid #f4f4f4; border-radius: 0; }
.menu-base ul li ul li a:before { content: "・"; position: absolute; left: 0; top: 4px; }
.menu-base ul li ul li a:after { content: "\f054"; font-family: "Font Awesome 5 Free"; position: absolute; top: 50%; margin-top: -10px; right: 0; font-size: 100%; font-weight: 700; }
.f-nav .menu-base ul li ul li a:after { right: 6px; }
.menu-base.menu-cat1 ul li ul li a,
.menu-base.menu-cat1 ul li ul li a:hover { background: none; }
.menu-base.menu-cat1 ul li ul li a:hover,
.menu-base.menu-cat1 ul li ul li.current a { border-bottom: 1px dotted #2a9dea; }
.cmt-box { padding: 12px; }

.attention_box { border: 1px solid; padding: 14px 24px; background: #fff; width: 100%; }
.attention_box p { line-height: 1.5 !important; font-size: 90%; }
.attention_box.attention_l p { line-height: 1.6 !important; font-size: 105%; }
.attention_box.attention_n p { line-height: 1.6 !important; font-size: 100%; margin-bottom: 18px; }
.attention_box p:first-child { margin-bottom: 7px; }
.attention_box.attention_n p:first-child { margin-bottom: 13px; }
.attention_box p strong { font-size: 100%; }
.attention_box.attention_l p strong { font-size: 115%; }
.attention_box.attention_n p strong { font-size: 108%; }
.brd-color01 { border-color: #567283; margin: 32px 0 24px }
.brd-color03 { border: 1px dotted #000; }
.brd-color04 { border: 1px solid #000; }
.brd-color05 { border: 2px solid #b8bac2; }
.brd-color02 { border-color: #de0000; }
.kinki { text-align: right !important; font-size: 80%; margin: 16px 0 20px; width: 100%; }
@media all and (max-width: 736px) { .f-nav { display: none; } .index-nav .menu-base ul li ul li a:after { right: 9px; }
.index-nav .ttl_menu:after { margin-right: 4px; } }
@media all and (min-width: 737px) {
.top-index { display: flex; justify-content: space-between; flex-wrap: wrap; }
.top-index .menu-base { width: 48%; }
.top-index .menu-cat2 ul li { margin-bottom: 24px; }
.menu-cat3 { margin-left: 52%; }
.f-nav {
background: #f4f4f4;
margin-bottom: -24px;
padding-bottom: 40px;
padding-top: 24px; }
.f-nav .top-index .menu-base { width: 100%; }
.index-nav .top-index .menu-base { width: 100%; }
}

@media all and (max-width: 480px) {
.attention_box { padding: 10px 16px; }
.attention_box.attention_l p { font-size: 100%; }
.attention_box.attention_l p strong { font-size: 110%; }
.kinki { font-size: 70%; }
}

@media all and (max-width: 420px) {
.menu-base.menu-cat3 .cat-top a { padding-right: 20px; letter-spacing: -0.5px; }
}
@media all and (max-width: 377px) {
.menu-base .cat-top { font-size: 105%; }
.menu-base.menu-cat3 .cat-top a { padding-right: 24px; letter-spacing: -0.7px; }
}

/* brd */
.brd-01 { width: 100%; height: 8px; background: #a9c3d3; margin: 24px 0; }
.brd-02 { width: 100%; height: 8px; background: #7bccf4; margin: 24px 0; }
.brd-03 { width: 100%; height: 1px; background: #ccc; margin: -22px 0 52px 0; }

/* kv */
.kv-box {
background-image: url("../img/common/main_bg.jpg");
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
background-color: #f9fdff;
padding: 0;
}
.kv-box h1 { text-align: center; position: relative; }
.kv-box h1 img { width: 100%; height: auto; }

@media all and (min-width: 737px) {
.kv-index-logo-wrap { min-width: min-width: 990px; height: 368px; }
.kv-box h1.kv-index-logo-wrap { 
background-image: url("../img/index/bg_pc.svg");
background-position: center center;
background-size: cover;
width: 100%; height: 368px;
min-width: 990px; } }

.kv-index-logo { max-width: 1020px; height: auto; margin: 0 auto; }
.kv-select { display: flex; justify-content: space-between; width: 100%; margin: 0 auto;
 padding-top: 48px; padding-bottom: 48px; flex-wrap: wrap; }

.kv-select-area { margin: 0; width: 48%; box-shadow: 0 0 5px rgba(122, 159, 179, 0.4); border-radius: 10px; position: relative; background: #fff; padding-bottom: 80px; position: relative; }
.event_no { pointer-events: none; }
.kv-select-area h2 { font-size: 120%; font-weight: 700; text-align: center; padding: 16px 0; border-radius: 10px 10px 0 0; }
.kv-select-area.select1 h2 {
background:-webkit-gradient(linear, left top, right top, from(#fdedda), to(#fff7ee));
background:-webkit-linear-gradient(left, #fdedda, #fff7ee);
background:-moz-linear-gradient(left, #fdedda, #fff7ee);
background:-o-linear-gradient(left, #fdedda, #fff7ee);
background:linear-gradient(to right, #fdedda, #fff7ee); }
.kv-select-area.select2 h2 {
background:-webkit-gradient(linear, left top, right top, from(#c7ecf6), to(#ecf9fd));
background:-webkit-linear-gradient(left, #c7ecf6, #ecf9fd);
background:-moz-linear-gradient(left, #c7ecf6, #ecf9fd);
background:-o-linear-gradient(left, #c7ecf6, #ecf9fd);
background:linear-gradient(to right, #c7ecf6, #ecf9fd); }

.btn_arrow {
display: flex;
position: absolute;
justify-content: center;
align-content: center;
align-items: center;
line-height: 1.0;
border-radius: 30px;
height: 48px;
text-align: center;
font-weight: 700;
color: #fff;
font-size: 120%;
bottom: 20px;
left: 50%;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
width: 85%; }
.kv-select-in { padding: 20px; }
.btn_01 { background-color: #ffa943; box-shadow: 0 0 18px #d78635 inset; }
.btn_01:hover { background-color: #d78635; }
.btn_02 { background-color: #59bbeb; box-shadow: 0 0 18px #4494bb inset; } 
.btn_02:hover { background-color: #4494bb; }
a.btn_arrow:after { content: "\f054"; font-family: "Font Awesome 5 Free"; position: absolute;
top: 50%;
transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
right: 24px; font-size: 60%; color: #fff; }

.oo_area { margin: 32px auto; }
.oo_area2 { margin: 54px auto; }
.oo_area3 { margin: 54px auto 46px; display: flex; justify-content: space-between; width: 90%; }
.oo_area3 a { width: 48%; }
.new_banner { border: 1px solid #9dabb3; }
@media all and (max-width: 736px) {
.oo_area2 { margin: 40px auto; }
.oo_area3 { width: 100%; margin: 40px auto; }
}
@media all and (max-width: 480px) {
.oo_area3 a { width: 100%; display: block; margin-bottom: 18px; }
.oo_area3 { margin: 40px auto 20px; flex-wrap: wrap; }
}

.non_cover { position: relative; }
.non_cover:before { content: ""; width: 100%; height: 100%; display: block; background: rgba(100,100,100,0.5);
position: absolute;
top: 0;
left: 0; 
border-radius: 10px;
z-index: 2; }


@media all and (max-width: 736px) {
.kv-select { padding-top: 32px; padding-bottom: 32px; }
.kv-select-area { width: 100%; }
.kv-select-area.select2 { margin-bottom: 28px; }
}
@media all and (max-width: 480px) {
a.btn_arrow:after { right: 18px; }
.btn_arrow { font-size: 115%; }
}
@media all and (max-width: 396px) {
a.btn_arrow:after { right: 11px; }
.btn_arrow { letter-spacing: -0.5px; }
}


/* 共通 */
a:hover img {
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
filter:alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7; }
	
@media all and (min-width: 737px) {
.inner,footer nav { min-width: 990px; }
.inner_r0 { padding-right: 0; }}
.inner2 { padding-top: 40px; padding-bottom: 40px; }
.inner2 p { margin-bottom: 18px; line-height: 1.8; }
.inner2.top-txt p { margin-bottom: 24px; line-height: 1.8; }

main p { font-size: 16px; }
@media all and (max-width: 736px) {
.inner2 { padding-top: 30px; padding-bottom: 30px; }
.inner2 p { margin-bottom: 13px; }
.inner2.top-txt p { margin-bottom: 20px; }
}

@media all and (max-width: 480px) {
main p { font-size: 14px; } }
.color-gr { color: #59bbeb; }
.color-or { color: #e66e1b; }
.color-fg { color: #309f3a; }
.color-sb { color: #2a9dea; }
.color-bg { color: #475e6e; }
.color-rd { color: #c2271f; }
.color-gb { color: #556271; }

p strong { font-weight: 700; }
.q_ttl { display: flex; align-items: center; padding: 30px 0 30px 72px; font-size: 1.8rem; color: #59bbeb; font-weight: 700; letter-spacing: 1px; margin-bottom: 30px;
background-image: url("../img/under/q.png");
background-size: 60px auto;
background-position: 0 center;
background-repeat: no-repeat;
position: relative; }
.q_ttl:after { content: ""; position: absolute; width: 100%; height: 6px;
bottom: -6px;
left: 0;
background-image: url("../img/under/brd.png");
background-size: 14px auto;
background-position: 0 center;
background-repeat: repeat-x; }
.q_ttl2 { margin-bottom: 8px !important; margin-bottom: -12px !important; letter-spacing: -0.3px; }
.q_ttl2:after { content: none !important; }
.a_txt { padding-left: 72px; font-size: 1.2rem; color: #545455; font-weight: 700; letter-spacing: 1px; margin-bottom: 30px !important;
background-image: url("../img/under/a.png");
background-size: 60px auto;
background-position: 0 0;
background-repeat: no-repeat;}
.a_txt p { line-height: 1.6; margin-bottom: 11px !important; }
.a_txt2 p { font-weight: normal !important; font-size: 1.08rem !important; line-height: 1.75; }
.a_txt2 p.txt_80 { font-size: 0.84rem !important; }
@media all and (max-width: 736px) {
.q_ttl { padding: 24px 0 24px 44px; font-size: 1.5rem; letter-spacing: 0.5px; margin-bottom: 20px;
background-size: 36px auto; }
.q_ttl:after { background-size: 8px auto; }
.a_txt { padding-left: 44px; font-size: 1rem; margin-bottom: 16px !important;
background-size: 36px auto;
letter-spacing: 0; }
}

.flex-box { display: flex; justify-content: space-between; flex-wrap: nowrap; }
.flex-box2 { display: flex; justify-content: space-between; flex-wrap: wrap; }
.flex-box3 { display: flex; justify-content: flex-start; flex-wrap: nowrap; }
.flex-box4 { display: flex; justify-content: center; flex-wrap: nowrap; }

.side-box { width: 26%; }
.content-box { width: 70%; }

.index-banner { margin-bottom: 32px; }
.index-banner img { box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3); }
.side-index .menu-base { margin: 0 0 20px; }
.side-index p { margin-bottom: 0 !important; }
.side-index .menu-base ul { padding-left: 9px; padding-right: 9px; }
.side-index .menu-base ul li ul { padding-left: 0; margin-top: 4px; }
.side-index .menu-base ul li ul li { margin-bottom: 8px; margin-left: 2px; }
.side-index .menu-base ul li ul li a { letter-spacing: -0.2px; line-height: 1.5; }
.side-index .menu-base ul li ul li a:after { content: "\f054"; font-family: "Font Awesome 5 Free"; position: absolute; top: 50%; margin-top: -10px; margin-left: 4px; right: 0; font-size: 100%; font-weight: 700; }

.ttl-01 { border-radius: 10px 10px 0 0; margin-bottom: 28px !important; padding: 34px 32px 36px; font-size: 1.75rem; font-weight: 700; color: #fff; line-height: 1.2; letter-spacing: 1px; text-align: left;
border-bottom: 4px solid #364c5b;
background-image: url("../img/common/ttl01_pc.jpg");
background-size: cover;
background-position: center center;
background-color: #6cbceb; display: none !important; }
.ttl-02 { border-radius: 10px 10px 0 0; margin-bottom: 14px !important; margin-top: 48px !important; padding: 17px 36px 18px 64px; font-size: 1.45rem; font-weight: 700; color: #000; line-height: 1.2; letter-spacing: 0.5px; text-align: left;
background-image: url("../img/common/ttl02_pc.jpg");
background-size: cover;
background-position: 0 bottom;
background-color: #f3f5f6; }
.ttl-02 span.video_ttl {
background-image: url("../img/common/video.png");
background-size: 100px auto;
background-repeat: no-repeat;
background-position: 0 center;
padding-left: 116px;
margin-left: -38px;
display: inline-block;
min-height: 48px;
display: flex;
align-items: center;
}
.ttl-02_fst { margin-top: 0 !important; }
.f-ttl { color: #2a9dea; font-family: "Times New Roman", Times, "serif" !important; padding-right: 24px; font-size: 280%; position: relative; top: -20px; font-weight: 400; font-style: italic; }
@media all and (max-width: 736px) {
.ttl-01 {
font-size: 1.5rem;
background-image: url("../img/common/ttl01_sp.jpg");
padding: 26px 22px 28px;
}
.ttl-02 {
font-size: 1.25rem;
background-image: url("../img/common/ttl02_sp.jpg");
padding: 14px 20px 15px 40px;
letter-spacing: 0.3px;
}
.ttl-02 span.video_ttl {
background-size: 80px auto;
padding-left: 92px;
margin-left: -25px;
}
}
@media all and (max-width: 640px) {
.ttl-01 { font-size: 1.4rem; letter-spacing: 0.5px; } }
@media all and (max-width: 480px) {
.f-ttl { font-size: 230%; padding-right: 15px; }
}

.ttl-03 { font-weight: 500; line-height: 1.2; position: relative; font-size: 1.2rem; margin: 48px 0 10px; color: #000; }
.ttl-03.ttl-03_2 { padding-left: 20px; position: relative; }
.ttl-03.ttl-03_2:after { content: "■"; color: #3395d6; font-size: 60%; position: absolute; left: 0; top: 5px; }
.ttl-03.ttl-03_2.ttl-id01 { text-indent: -2.0em; padding-left: 2.0em; position: relative; line-height: 1.4;  font-weight: 700; font-size: 1.1rem; margin-top: 60px; }
.ttl-03.ttl-03_2.ttl-id02 { text-indent: -2.6em; padding-left: 2.6em; position: relative; line-height: 1.4; font-weight: 700; font-size: 1.1rem; margin-top: 60px; }
.ttl-03.ttl-03_2.ttl-id01:after, .ttl-03.ttl-03_2.ttl-id02:after { content: none; }
@media all and (max-width: 560px) {
.ttl-03.ttl-03_2.ttl-id01, .ttl-03.ttl-03_2.ttl-id02 { font-size: 1.0rem; }
}
/*
.ttl-03.ttl-03_2.ttl-id01:after { content: "■"; color: #3395d6; font-size: 60%; position: absolute; left: 1.5em; top: 5px; }
.ttl-03.ttl-03_2.ttl-id02:after { content: "■"; color: #3395d6; font-size: 60%; position: absolute; left: 2.5em; top: 5px; }
@media all and (max-width: 560px) {
.ttl-03.ttl-03_2.ttl-id02, .ttl-03.ttl-03_2.ttl-id01 { text-indent: 0; padding-left: 20px; margin-left: 0; }
.ttl-03.ttl-03_2.ttl-id02:after, .ttl-03.ttl-03_2.ttl-id01:after { left: 0; top: 4.5px; }
}
@media all and (max-width: 480px) {
.ttl-03.ttl-03_2.ttl-id02, .ttl-03.ttl-03_2.ttl-id01 { padding-left: 16px; }
.ttl-03.ttl-03_2.ttl-id02:after, .ttl-03.ttl-03_2.ttl-id01:after { left: 0; top: 4px; }
}*/

.ttl-08 { position: relative; padding-left: 16px; }
.ttl-08:after { content: "■"; color: #333; position: absolute; top: 3px; left: 0;
display: block; font-size: 14px;
-moz-transform: scale(0.5,0.5); /* Firefox */
-webkit-transform: scale(0.5,0.5); /* Chrome,Safari */
-ms-transform: scale(0.5,0.5); /* IE */
transform: scale(0.5,0.5);/* CSS3 */}

/*
.ttl-03 { font-weight: 500; line-height: 1.2; position: relative; font-size: 1.2rem; margin: 48px 0 10px 36px; color: #000; }
.ttl-03:before { content: "●"; color: #dbe0e4; position: absolute; left: -27px; top: 6px; font-size: 16px; font-weight: 400 !important; }
.ttl-03:after { content: "○"; color: #b2d2e9; position: absolute; left: -36px; top: -3px; font-size: 22px; font-weight: 700 !important; }
.ttl-03.txt-id04:before { left: -5px; }
.ttl-03.txt-id04:after { left: -14px; }
*/


.ttl-04 { font-weight: 900; line-height: 1.2; position: relative; letter-spacing: 1px; font-size: 1.1rem; margin: 32px 0 8px; padding-left: 22px; }
.ttl-04.ttl-04_2 { padding-left: 19px; }
.ttl-04:before { content: "\f00c"; font-family: "Font Awesome 5 Free"; position: absolute; left: 0; top: 3px; font-size: 14px; }
.ttl-04.ttl-04_2 { color: #333; font-weight: 600 !important; }
.ttl-04.ttl-04_2:before { content: "\f111" !important; color: #9fa0a0; font-weight: bold !important; }
.ttl-04.ttl-04_2_g:before { content: "\f111" !important; color: #309f3a; font-size: 12px; top: 5px; left: 2px; }
.ttl-04.ttl-04_2_b:before { content: "\f111" !important; color: #1199a9; font-size: 12px; top: 5px; left: 2px; }
.ttl-04.ttl-04_3:before { content: "\f00c" !important; color: #309f3a; }

.img-01 { border: 1px solid #59bbeb; border-radius: 6px; }
.img-02 { float: right; margin: 6px 0 8px 10px; width: 254px; height: auto; }
.img-03 { max-width: 320px; width: 70%; height: auto; }
.img-03_2 { max-width: 270px; width: 70%; height: auto; }
.img-04 { width: 80%; height: auto; }
.img-04_2 { width: 80%; height: auto; }
.cb-04 { width: 80%; margin: 10px auto 0; }
.img-05 { width: 90%; height: auto; }
.mgIT { margin-bottom: -14px !important; position: relative; z-index: 2; line-height: 1.3 !important; }
@media all and (max-width: 736px) {.mgIT { margin-bottom: -11px !important;}}
@media all and (max-width: 540px) {.mgIT { margin-bottom: -8px !important;} .img-04_2 { width: 100%; } .cb-04 { width: 100%; margin: 10px auto 0; }}
@media all and (max-width: 480px) {
.ttl-01 { padding: 16px 15px 17px; font-size: 1.35rem; }
.ttl-02 { padding: 8px 28px 9px; font-size: 1.2rem; }
.ttl-02 span.video_ttl {
background-size: 56px auto;
background-position: left top;
padding-left: 0;
padding-top: 28px;
margin-left: 0;
margin-top: 6px;
display: inline-block;
}
.ttl-03 { font-size: 1.06rem; }
.ttl-03.txt-id04:before { left: -7px; }
.ttl-03.txt-id04:after { left: -16px; }
.ttl-03.ttl-03_2:after { top: 4px; }
.ttl-02_2 { padding: 7px 16px 8px; }
.mgIT { margin-bottom: -6px !important;}}
@media all and (max-width: 440px) { .ttl-01 { font-size: 1.3rem; }}

.txt-id01 { text-indent: -2.5em; padding-left: 2.5em; }
.txt-id02 { text-indent: -1.5em; padding-left: 1.5em; }
.txt-id03 { text-indent: -1.0em; padding-left: 1.0em; }
.txt-id04 { text-indent: -1.1em; padding-left: 1.1em; }
.txt-id05 { text-indent: -1.4em; padding-left: 1.4em; }
.txt-id07 { text-indent: -1.3em; padding-left: 1.3em; }
.txt-id07_2 { text-indent: -1.8em; padding-left: 1.8em; }
.txt-id08 { text-indent: -0.5em; padding-left: 0.5em; }
.txt-id09 { text-indent: -2em; padding-left: 2em; }
.txt-id09_2 { text-indent: -2.14em; padding-left: 2.14em; }
.txt-prm8 { position: relative; left: -8px; }
@media all and (min-width: 737px) {.txt-id06 { text-indent: -4em; padding-left: 4em; }}

.bg-gr1 { background-color: #59bbeb; }
.bg-gr2 { background-color: #e4f3f5; }
.bg-gr3 { background-color: #f2f9fa; }
.bg-fg { background-color: #eff7ea; }
.bg-or1 { background-color: #e66e1b; }
.bg-or2 { background-color: #fdefe0; }
.bg-or3 { background-color: #fbf7f3; }
.bg-yl { background-color: #f3f6d1; }

@media all and (max-width: 736px) {
.side-box { display: none; }
.content-box { width: 100%; }
.drawer-nav { overflow-y: scroll; padding-bottom: 100px !important; padding-top: 14px; background: #f3fafe; }
}

/* current */
.menu-base.menu-cat1 ul li ul li a:hover { border-bottom: 1px dotted #2a9dea; }
/*
#id01_01 ul#menu_01 li:nth-child(1) ul li:nth-child(1) a { border-bottom: 1px dotted #2a9dea; }
*/
@media all and (min-width: 737px) {
.grp01_01 header .globalnav li.gn02 a,
.grp01_02 header .globalnav li.gn02 a,
.grp01_03 header .globalnav li.gn02 a,
.grp01_04 header .globalnav li.gn02 a,
.grp02_01  header .globalnav li.gn03 a,
.grp02_02 header .globalnav li.gn03 a,
.grp02_03 header .globalnav li.gn03 a,
.grp03_01  header .globalnav li.gn04 a,
.grp03_02 header .globalnav li.gn04 a,
.grp04_01 header .globalnav li.gn05 a { background-color: #59bbeb; color: #fff; }

#id01_01 .side-index ul li:nth-child(1) ul li:nth-child(1),
#id01_01 .f-nav .menu-base:nth-child(1) ul li:nth-child(1) ul li:nth-child(1),
#id01_02 .side-index ul li:nth-child(1) ul li:nth-child(2),
#id01_02 .f-nav .menu-base:nth-child(1) ul li:nth-child(1) ul li:nth-child(2),
#id02_01 .side-index ul li:nth-child(2) ul li:nth-child(1),
#id02_01 .f-nav .menu-base:nth-child(1) ul li:nth-child(2) ul li:nth-child(1),
#id02_02 .side-index ul li:nth-child(2) ul li:nth-child(2),
#id02_02 .f-nav .menu-base:nth-child(1) ul li:nth-child(2) ul li:nth-child(2),
#id03_01 .side-index ul li:nth-child(3) ul li:nth-child(1),
#id03_01 .f-nav .menu-base:nth-child(1) ul li:nth-child(3) ul li:nth-child(1),
#id03_02 .side-index ul li:nth-child(3) ul li:nth-child(2),
#id03_02 .f-nav .menu-base:nth-child(1) ul li:nth-child(3) ul li:nth-child(2),
#id03_03 .side-index ul li:nth-child(3) ul li:nth-child(3),
#id03_03 .f-nav .menu-base:nth-child(1) ul li:nth-child(3) ul li:nth-child(3),
#id04_01 .side-index ul li:nth-child(4) ul li:nth-child(1),
#id04_01 .f-nav .menu-base:nth-child(1) ul li:nth-child(4) ul li:nth-child(1),
#id04_02 .side-index ul li:nth-child(4) ul li:nth-child(2),
#id04_02 .f-nav .menu-base:nth-child(1) ul li:nth-child(4) ul li:nth-child(2),
#id05_01 .side-index ul li:nth-child(1) ul li:nth-child(1),
#id05_01 .f-nav .menu-base:nth-child(2) ul li:nth-child(1) ul li:nth-child(1),
#id05_02 .side-index ul li:nth-child(1) ul li:nth-child(2),
#id05_02 .f-nav .menu-base:nth-child(2) ul li:nth-child(1) ul li:nth-child(2),
#id05_03 .side-index ul li:nth-child(1) ul li:nth-child(3),
#id05_03 .f-nav .menu-base:nth-child(2) ul li:nth-child(1) ul li:nth-child(3),
#id05_04 .side-index ul li:nth-child(1) ul li:nth-child(4),
#id05_04 .f-nav .menu-base:nth-child(2) ul li:nth-child(1) ul li:nth-child(4),
#id05_05 .side-index ul li:nth-child(1) ul li:nth-child(5),
#id05_05 .f-nav .menu-base:nth-child(2) ul li:nth-child(1) ul li:nth-child(5),
#id05_06 .side-index ul li:nth-child(1) ul li:nth-child(6),
#id05_06 .f-nav .menu-base:nth-child(2) ul li:nth-child(1) ul li:nth-child(6),
#id05_07 .side-index ul li:nth-child(1) ul li:nth-child(7),
#id05_07 .f-nav .menu-base:nth-child(2) ul li:nth-child(1) ul li:nth-child(7),
#id05_08 .side-index ul li:nth-child(1) ul li:nth-child(8),
#id05_08 .f-nav .menu-base:nth-child(2) ul li:nth-child(1) ul li:nth-child(8),
#id05_09 .side-index ul li:nth-child(1) ul li:nth-child(9),
#id05_09 .f-nav .menu-base:nth-child(2) ul li:nth-child(1) ul li:nth-child(9),
#id05_10 .side-index ul li:nth-child(1) ul li:nth-child(10),
#id05_10 .f-nav .menu-base:nth-child(2) ul li:nth-child(1) ul li:nth-child(10),
#id05_11 .side-index ul li:nth-child(1) ul li:nth-child(11),
#id05_11 .f-nav .menu-base:nth-child(2) ul li:nth-child(1) ul li:nth-child(11),
#id05_12 .side-index ul li:nth-child(1) ul li:nth-child(12),
#id05_12 .f-nav .menu-base:nth-child(2) ul li:nth-child(1) ul li:nth-child(12),
#id05_13 .side-index ul li:nth-child(1) ul li:nth-child(13),
#id05_13 .f-nav .menu-base:nth-child(2) ul li:nth-child(1) ul li:nth-child(13),
#id05_14 .side-index ul li:nth-child(1) ul li:nth-child(14),
#id05_14 .f-nav .menu-base:nth-child(2) ul li:nth-child(1) ul li:nth-child(14),
#id07_01 .side-index ul li:nth-child(1) ul li:nth-child(1),
#id07_01 .f-nav .menu-base:nth-child(3) ul li:nth-child(1) ul li:nth-child(1),
#id07_02 .side-index ul li:nth-child(1) ul li:nth-child(2),
#id07_02 .f-nav .menu-base:nth-child(3) ul li:nth-child(1) ul li:nth-child(2),
#id07_03 .side-index ul li:nth-child(1) ul li:nth-child(3),
#id07_03 .f-nav .menu-base:nth-child(3) ul li:nth-child(1) ul li:nth-child(3),
#id07_04 .side-index ul li:nth-child(1) ul li:nth-child(4),
#id07_04 .f-nav .menu-base:nth-child(3) ul li:nth-child(1) ul li:nth-child(4),
#id07_05 .side-index ul li:nth-child(1) ul li:nth-child(5),
#id07_05 .f-nav .menu-base:nth-child(3) ul li:nth-child(1) ul li:nth-child(5),
#id07_06 .side-index ul li:nth-child(1) ul li:nth-child(6),
#id07_06 .f-nav .menu-base:nth-child(3) ul li:nth-child(1) ul li:nth-child(6),
#id07_07 .side-index ul li:nth-child(1) ul li:nth-child(7),
#id07_07 .f-nav .menu-base:nth-child(3) ul li:nth-child(1) ul li:nth-child(7),
#id07_08 .side-index ul li:nth-child(1) ul li:nth-child(8),
#id07_08 .f-nav .menu-base:nth-child(3) ul li:nth-child(1) ul li:nth-child(8),
#id08_01 .side-index ul li:nth-child(2) ul li:nth-child(1),
#id08_01 .f-nav .menu-base:nth-child(3) ul li:nth-child(2) ul li:nth-child(1),
#id08_02 .side-index ul li:nth-child(2) ul li:nth-child(2),
#id08_02 .f-nav .menu-base:nth-child(3) ul li:nth-child(2) ul li:nth-child(2),
#id08_03 .side-index ul li:nth-child(2) ul li:nth-child(3),
#id08_03 .f-nav .menu-base:nth-child(3) ul li:nth-child(2) ul li:nth-child(3),
#id08_04 .side-index ul li:nth-child(2) ul li:nth-child(4),
#id08_04 .f-nav .menu-base:nth-child(3) ul li:nth-child(2) ul li:nth-child(4),
#id09_01 .side-index ul li:nth-child(1) ul li:nth-child(1),
#id09_01 .f-nav .menu-base:nth-child(4) ul li:nth-child(1) ul li:nth-child(1),
#id06_02 .side-index ul li:nth-child(3) ul li:nth-child(2),
#id06_02 .f-nav .menu-base:nth-child(2) ul div:nth-child(2) li:nth-child(2) ul li:nth-child(2) { border-bottom: 1px dotted #59bbeb; }

.grp01_01 .side-index .menu-base ul li:nth-child(1) a.ttl_menu,
.grp01_02 .side-index .menu-base ul li:nth-child(2) a.ttl_menu,
.grp01_03 .side-index .menu-base ul li:nth-child(3) a.ttl_menu,
.grp01_04 .side-index .menu-base ul li:nth-child(4) a.ttl_menu,
.grp02_01 .side-index .menu-base ul li:nth-child(1) a.ttl_menu,
.grp02_02 .side-index .menu-base ul li:nth-child(2) a.ttl_menu,
.grp02_03 .side-index .menu-base ul li:nth-child(3) a.ttl_menu,
.grp03_01 .side-index .menu-base ul li:nth-child(1) a.ttl_menu,
.grp03_02 .side-index .menu-base ul li:nth-child(2) a.ttl_menu,
.grp04_01 .side-index .menu-base ul li:nth-child(1) a.ttl_menu { background-color: #99e2f8; color: #fff; }

.grp01_01 .f-nav ul#menu_01 li:nth-child(1) a.ttl_menu .btn_shdw,
.grp01_02 .f-nav ul#menu_01 li:nth-child(2) a.ttl_menu .btn_shdw,
.grp01_03 .f-nav ul#menu_01 li:nth-child(3) a.ttl_menu .btn_shdw,
.grp01_04 .f-nav ul#menu_01 li:nth-child(4) a.ttl_menu .btn_shdw,
.grp02_01 .f-nav ul#menu_02 div:nth-child(1) li:nth-child(1) a.ttl_menu .btn_shdw,
.grp02_02 .f-nav ul#menu_02 div:nth-child(2) li:nth-child(1) a.ttl_menu .btn_shdw,
.grp02_03 .f-nav ul#menu_02 div:nth-child(2) li:nth-child(2) a.ttl_menu .btn_shdw,
.grp03_01 .f-nav ul#menu_03 li:nth-child(1) a.ttl_menu .btn_shdw,
.grp03_02 .f-nav ul#menu_03 li:nth-child(2) a.ttl_menu .btn_shdw,
.grp04_01 .f-nav ul#menu_04 li:nth-child(1) a.ttl_menu .btn_shdw { background-color: #99e2f8; color: #fff; }

}


/* part2 */
.phR { float: right; margin: 0 0 0 12px; width: 32%; height: auto; padding: 8px; }
.phR2 { float: right; margin: 0 0 0 12px; width: 25%; height: auto; max-width: 90px; }
.phR3 { float: right; margin: 0 0 0 12px; width: 31%; height: auto; }
.phR4 { float: right; margin: 0 0 0 12px; width: 34%; height: auto; padding: 0 4px 4px; }
.phR5 { float: right; margin: 0 0 0 12px; width: 39%; height: auto; padding: 0 4px 4px; }
.phR6 { float: right; margin: 0 0 0 12px; width: 41%; height: auto;  }
@media all and (max-width: 736px) {
.phR { padding: 4px; }
}
.pdL0 { padding-left: 0 !important; }
.pdL20 { padding-left: 19px !important; }
.pdL12 { padding-left: 12px !important; }
.pdB0 { padding-bottom: 0 !important; }

.lead_box { background: #fffded; padding: 22px 26px; position: relative; margin: 24px 0; }
.lead_box p { color: #43959c; font-size: 110%; font-weight: bold; z-index: 0; margin-bottom: 0; line-height: 1.65; }
.lead_box:before { content: ""; width: 60px; height: 60px; position: absolute; top: 0; left: 0; z-index: 1; border-left: 2px solid #5daeb5; border-top: 2px solid #5daeb5; }
.lead_box:after { content: ""; width: 60px; height: 60px; position: absolute; bottom: 0; right: 0; z-index: 1; border-right: 2px solid #5daeb5; border-bottom: 2px solid #5daeb5; }
.lead_box:after {
    content:" ";
    display:block;
    clear:both;
}
.list-check { list-style: none; }
.list-check li { font-size: 100%; margin-bottom: 6px; position: relative; padding-left: 23px; color: #333; }
.list-check li:before { content: "\f00c"; font-family: "Font Awesome 5 Free"; color: #59bbeb; font-size: 90%; position: absolute; left: 0; top: 6px; font-weight: bold; }
.list-circle { list-style: none; }
.list-circle li { font-size: 100%; margin-bottom: 6px; position: relative; padding-left: 18px; color: #333; }
.list-circle li:before { content: "\f111"; font-family: "Font Awesome 5 Free"; color: #e66e1b; font-size: 70%; position: absolute; left: 0; top: 7px; font-weight: bold; }
.list-check li:last-child,.list-circle li:last-child { margin-bottom: 0; }

.rd_box01 { border-radius: 10px; padding: 13px 16px 14px; }
.rd_box02 { border-radius: 10px; padding: 0 16px 14px; border: 2px solid #fae5ee; margin-top: 60px; }
.ttl-05 { position: relative; top: -19px; left: 0px; padding: 6px 25px 7px; line-height: 1.3; color: #d94e8f; background: #fae5ee; border-radius: 40px; display: inline-block; font-size: 110%; font-weight: bold; margin-bottom: -24px; }
.list-nm { list-style: none; }
.list-nm li { display: inline-block; margin: 8px 20px 0 0; }

.ttl-06 { background-color: #7bb262; color: #fff; font-weight: bold; padding: 4px 12px 5px; border-radius: 30px; line-height: 1.2; display: inline-block; margin-bottom: 4px; font-size: 120%; margin-top: 9px; }

.ttl-07 { background: #cc5c21; color: #fff; font-weight: bold; text-align: center; font-size: 120%; line-height: 1.3; padding: 8px 12px 9px; margin-bottom: 0; }
.sq_box02 { border: 1px solid #cc5c21; padding: 12px; display: flex; justify-content: space-between; flex-wrap: wrap; color: #111; }
.box_HH { width: 48.4%; }


.sq_box02 p { padding-left: 30px; margin-bottom: 16px; line-height: 1.55; font-size: 95%; }

@media all and (max-width: 736px) {
.mgTBH { margin-top: 20px; }
.box_HH { width: 100%; }
.ttl-05 { padding: 6px 20px 7px; font-size: 107.5%; }
}

.ttl-09 { background-color: #1199a9; color: #fff; font-size: 105%; font-weight: 600; margin: 32px 0 0; line-height: 1.4; padding: 4px 12px 5px; }

.sq_box01 { background: #fbfcf6; border: 1px solid #bdc91b; border-top: 6px solid #bdc91b; padding: 20px; }
.sq_box01 h2 { padding: 0 8px 8px 24px; color: #309f3a; font-weight: 700; line-height: 1.2; position: relative; letter-spacing: 1px; font-size: 1.25rem; margin: 0 0 11px; border-bottom: 1px solid #309f3a; }
.sq_box01 h2:before { content: "■"; color: #309f3a; position: absolute; left: 2px; top: 3px; font-size: 14px; }

.img-06 { width: 105%; margin-left: -2.5%; }
.txt_wball { word-break: break-all; }


.table01 { border-bottom: 1px solid #aaa; border-left: 1px solid #aaa;
border-collapse: separate;
border-spacing: 0px;
width: 100%; }
.table01 th,.table01 td { border-top: 1px solid #aaa; border-right: 1px solid #aaa; }
.table01 th { font-weight: 500; white-space: nowrap; padding: 8px 12px; background-color: #bfdef7; line-height: 1.3; font-size: 96%; }
.table01 tbody th { background-color: #d9ebfa; }
.table01 td { font-size: 96%; padding: 8px 12px; font-weight: normal !important; text-align: center; line-height: 1.35 }
.table01 .td_st { background-color: #d9ebfa; font-weight: 500; }
.table01 .td_under { background-color: #edf5fc; padding-left: 24px; }
.table01 .bg_br { background: #6aa6dd !important; color: #fff; }
.table01 .bg_br2 { background: #7fb0e1 !important; color: #fff; }
.table01 .bg_br3 { background: #3395d6 !important; color: #fff; }
.table01 .bg_ig { background: #a1a2a2 !important; color: #fff; }
.table01 .bg_pg { background: #80a5c1 !important; color: #fff; }
.table01 .bg_pb { background: #d9ebfa !important; }
.table01 .bg_gb { background: #edf5fc !important; }
@media all and (max-width: 736px) {
.table01 th, .table01 td { padding: 6px 9px; font-size: 90%; }
.table01 .td_under { padding-left: 18px; }
.table-wrap {
  overflow-x: scroll;
}
}
.table-wrap2 {
  overflow-x: scroll;
}
.table {
  width: 100%;
  border-collapse: collapse;
  white-space: nowrap;
}
@media all and (max-width: 480px) { 
.table01 th, .table01 td { font-size: 85%; padding: 4px 5px; }
.td_sp_nw { white-space: nowrap; } }



/* Under */
.cat-box { width: 100%; height: 200px;
background-image: url("../img/common/cat_bg.svg");
background-size: cover;
background-position: center center;
background-color: #f4fafe; }
.cat-box-in { width: 100%; max-width: 1080px; margin: 0 auto; height: 200px; padding: 10px 24px 0; position: relative;
min-width: 990px;
background-image: url("../img/common/cat_in.svg");
background-size: cover;
background-position: center center; }
.cat-box-in p { font-size: 14px; border-bottom: 1px solid #000; display: inline-block; }
.cat-box-in h1 { font-size: 210% !important; line-height: 1.3 !important; font-weight: 700; position: absolute;
top: 50%;
left: 0%;
margin-left: 24px;
transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
color: #000; }
.brd-box { border: 1px solid #333; padding: 13px 16px; }
.pankuzu { max-width: 1080px; padding: 0 16px; margin: 12px auto 14px; font-size: 12px; }
.pankuzu a, .pankuzu span { display: inline-block; margin: 0 8px; }
.pankuzu span { font-weight: 700; }
.pankuzu a:hover { color: #777; }

.content-box p { margin-bottom: 24px; }
.content-box section { margin-bottom: 72px; }
.content-box p:last-child { margin-bottom: 0; }

.next-box { padding: 20px 30px; width: 100%; border: 1px dotted #2a9dea; display: flex; justify-content: center !important; margin: 10px 0 32px; text-align: center; flex-wrap: wrap; background: #e6f7fd; }
.next-box span { font-weight: 700; color: #a8a8a8; font-size: 115%; line-height: 1.35; display: inline-block; margin: 0 10px; }
.next-box span.link_dm { color: #2a9dea; text-decoration: underline; position: relative; }
.next-box span.link_dm:after { content: "\f0a9";
font-family: "Font Awesome 5 Free";
position: absolute;
top: 50%;
right: -20px;
transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
font-size: 80%; font-weight: 700;
text-decoration: none; }
.next-box.prev span.link_dm:after { content: "\f0a8"; right: auto; left: -20px; }
.next-box span.link_dm u { letter-spacing: -0.5px; }
.next-box:hover { border: 1px solid #2a9dea; background: #8ac4eb; }
.next-box:hover span { color: #fdfdfd; }
.next-box:hover span.link_dm { color: #fff; text-decoration: underline; }

.anch-link-box { display: flex; justify-content: space-between; flex-wrap: wrap; list-style: none; }
.anch-link-box li { width: 23%; }
.anch-link-box.li_short { position: relative; }
.anch-link-box.li_short li { width: 23%; margin-top: 12px; }
.anch-link-box li a { display: block; background: #fff; border: 2px solid #2a9dea; color: #2a9dea; line-height: 1.3; padding: 7px 24px 8px 13px; font-size: 80%; font-weight: 500; position: relative; text-align: center; }
.anch-link-box li a:after {
content: "\f078"; font-family: "Font Awesome 5 Free"; position: absolute;
top: 50%;
right: 9px;
transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
font-size: 70%; font-weight: 700; }
.anch-link-box li a:hover { border: 2px solid #50b5f8; color: #fff; background: #50b5f8; }
@media all and (max-width: 640px) {
.anch-link-box li { width: 48%; margin-top: 12px; }
.anch-link-box.li_short li { width: 30%; margin-top: 12px; }
.anch-link-box.li_short:after { content: ""; width: 31%; position: relative; } }
@media all and (max-width: 420px) {
.anch-link-box.li_short li a { padding: 7px 13px 8px 3px; }
.anch-link-box.li_short li a span { letter-spacing: -3px; }
.anch-link-box.li_short li a:after{right: 6px;font-size: 60%;}}

.sub-link-box { display: flex; justify-content: flex-end; flex-wrap: nowrap; margin: 18px 0 72px; list-style: none; }
.sub-link-box li { width: 30% !important; margin-left: 1.6%; text-align: left; display: flex; }
.sub-link-box li a { display: block; background: #2a9dea; color: #fff; line-height: 1.3; padding: 7px 24px 8px 13px; font-size: 80%; font-weight: 400; position: relative; display: flex; align-items: center; width: 100%; justify-content: flex-start; }
.sub-link-box li a:hover { background: #70b4e2; }
.sub-link-box li a:after { content: "\f054"; font-family: "Font Awesome 5 Free"; position: absolute;
top: 50%;
right: 7px;
transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
font-size: 70%; font-weight: 700; }

.mv_ttl { padding-left: 42px; background-image: url("../img/common/mv_icon_l.png");
background-position: 0 4px;
background-size: 36px auto;
background-repeat: no-repeat;
display: block; }
@media all and (max-width: 480px) {
.mv_ttl { padding-left: 32px; background-size: 26px; }
}
.ty_ttl { display: inline-block;
-moz-transform: scale(0.8,1.17); /* Firefox */
-webkit-transform: scale(0.8,1.17); /* Chrome,Safari */
-ms-transform: scale(0.8,1.17); /* IE */
transform: scale(0.8,1.17);/* CSS3 */ }

.dot_list { margin: 4px 0 0; padding: 0 0 0 22px; list-style: none; }
.dot_list li { padding-left: 17px; font-size: 96%; margin-bottom: 6px; line-height: 1.35; position: relative; }
.dot_list li:after { content: "・"; position: absolute; top: 1px; left: 0; }
td .dot_list { padding-left: 12px; }
td .dot_list li { padding-left: 13p; }
td .dot_list li:after { font-size: 80%; left: 6px; top: 2px; }

@media all and (max-width: 736px) {
.pankuzu { display: none; }
.cat-box { height: 140px; }
.cat-box-in { min-width: 100px; margin: 0 auto; height: 140px; padding-top: 4px;
background-size: auto 130%;
background-position: right -16px center; }
.cat-box-in h1 { font-size: 160% !important; padding: 0 24px; margin-left: 0; }
}
}
@media all and (max-width: 640px) {
.cat-box-in p { font-size: 12px; }
.cat-box-in h1 { font-size: 145% !important; }
.next-box { padding: 12px 30px 12px 14px; margin: 0; }
.next-box span { font-size: 108%; }
.sub-link-box { justify-content: space-between; flex-wrap: wrap; }
.sub-link-box li { width: 48.5% !important; margin-left: 0; margin-top: 10px; } }

@media all and (max-width: 480px) {
td .dot_list { padding-left: 6px; }
.next-box span { font-size: 100%; }
.cat-box-in h1 { font-size: 135% !important; } }

@media all and (max-width: 440px) {
.cat-box-in p { font-size: 10px; }
.cat-box-in h1 { font-size: 130% !important; }}

/* print */
@media print {
.drawer-nav { display: none; }
header {
    position: relative;
	top: 0;
	left: auto;
	right: auto;
	width: 100%;
	margin-bottom: 0 !important;
}
main { margin-top: 0 !important; }
.drawer--top .drawer-hamburger { display: none; }
}
@media print and (max-width: 736px) {
main { margin-top: -80px !important; }
}

/* LINK */
.overlay{
    width:100%;
    height:100%;
    background: rgba(0,0,0,0.6);
    position:fixed;
    z-index:555;
	display: none;
}
.dsp_bl { display: block; }
.dsp_ib { display: inline-block; }
.btn_area{
    width:90%;
	max-width: 720px;
    height:360px;
    position:absolute;
    top:50%;
    left:50%;
transform: translate(-50%, -50%);
-webkit-transform: translate(-50%, -50%);
-ms-transform: translate(-50%, -50%);
    background-color:#fff;
    z-index:999;
	padding: 30px;
}
.btn_area p{
    line-height: 1.5;
}
.btn_area button{
    display:block;
    margin:0 auto;
}
.btn_jump {
width: 70%;
position: absolute;
bottom: 30px;
left: 15%;
font-size: 130%;
font-weight: 500;
color: #fff;
background-color: #e66e1b;
text-align: center;
line-height: 1.1;
padding: 15px;
}

.btn_jump,.btn_close{
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
}
.btn_jump::before {
content: "";
width: 100%;
height: 100%;
padding: 1px;
box-sizing: content-box;
background-color: #fff;
border: 1px solid #e66e1b;
position: absolute;
top: -2px;
left: -2px;
z-index: -1;
}
.btn_jump::after {
    content: "\f35d";
    font-family: "Font Awesome 5 Free";
    position: absolute;
    top: 50%;
    margin-top: -10px;
    right: 18px;
    font-size: 90%;
	z-index: 10;
	color: #fff;
	font-weight: bold;
}
.btn_jump:hover {
background-color: #F59B5E;
}
.btn_close{
padding: 5px 5px 7px;
line-height: 1;
font-weight: 500;
font-size: 130%;
border-radius: 30px;
background-color: #000;
color: #fff;
position: absolute;
top: -20px;
right: -20px;
}

@media all and (max-width: 560px) {
.btn_area p{ font-size: 14px !important; }
.btn_area p.txt_130{ font-size: 18px !important; }
.btn_area{ height: auto; padding: 23px 23px 118px; width: 86%; }
.btn_jump { font-size: 110%; line-height: 1 !important; padding-bottom: 17px; }
.btn_jump::after { font-size: 80%; margin-top: -7px; }
.btn_close{ top: -16px; right: -16px; }
}


/* 施設向け */
ul.circle_list { list-style: none; margin: 0; padding: 0; }
ul.circle_list li { padding-left: 18px; margin-bottom: 12px; position: relative; line-height: 1.5; }
ul.circle_list li:before { content: "●"; font-size: 80%; color: #475e6e; position: absolute; left: 0; top: 3px; }
@media all and (max-width: 480px) { ul.circle_list li { font-size: 90%; } }

ul.circle_list li:last-child { margin-bottom: 0; }
ul.circle_list.icon_gr li:before { color: #a4adb5; font-size: 75%; top: 4px; }
ul.circle_list.icon_gr { padding-top: 4px; }
ul.circle_list.icon_gr li { margin-bottom: 2px; font-size: 90%; line-height: 1.4; padding-left: 16px; }
ul.circle_list.icon_rd li:before { color: #c2271f; }

ol.num_list { counter-reset: num; list-style-type: none; padding: 7px 0 0; margin: 0; }
ol.num_list li {
  position: relative;
  line-height: 1.4;
  margin-bottom: 7px;
  padding-left: 24px;
}
ol.num_list li:before {
  position: absolute;
  counter-increment: num;
  content: counter(num);
  display:inline-block;
  background: #9eacb4;
  color: #FFF;
  font-weight:bold;
  font-size: 12px;
  border-radius: 50%;
  left: 0;
  width: 18px;
  height: 18px;
  text-align: center;
  top: 3px;
  vertical-align: middle;
}

ul.sq_list { list-style: none; margin: 0; padding: 0; }
ul.sq_list li { padding-left: 26px; margin-bottom: 16px; position: relative; line-height: 1.5; font-weight: 700; color: #475e6e; font-size: 120%; }
ul.sq_list li span.sq_in { color: #000; font-weight: 400; font-size: 14px; display: inline-block; padding-top: 5px; line-height: 1.6; }
ul.sq_list li:before { content: "□"; font-size: 90%; color: #475e6e; position: absolute; left: 0; top: 3px;  }
ul.sq_list li:last-child { margin-bottom: 0; }
@media all and (max-width: 560px) {
ul.sq_list li { font-size: 110%; }
}

/* 施設向け */
.step-box { width: 49%; padding: 0; margin-bottom: 32px; }
.step-box-txt { 
padding: 22px 12px 0 60px;
position: relative;
margin-top: -8px;
background-image: url("../img/02/num_bg.png");
background-size: 58px auto;
background-position: 0 0;
background-repeat: no-repeat;
z-index: 2;
font-weight: 500;
min-height: 64px;
}
.step-box-txt p { line-height: 1.4 !important; font-size: 90% !important; }
.step-box-txt p.step-lt { font-size: 100% !important; }
.step-sk { position: relative; display: inline-block; padding: 4px 8px; font-size: 85%; border-radius: 4px; line-height: 1.1; background: #81c4e5; color: #fff; left: -25px; top: -1px; margin-right: -12px; }
@media all and (min-width: 737px) {
.step-sk { margin-right: -21px; left: -38px; }
}
@media all and (max-width: 480px) {
.step-sk { left: 0; font-size: 12px; display: block; width: 56px; text-align: center; margin: 5px 0 2px; }
}
.step-num { font-weight: 700; font-size: 30px; color: #556271; position: absolute;
top: 3px;
left: 23px; }
.step-box-img { position: relative; display: block; z-index: 3; padding: 0 12px !important; }
.step-box-img img { border-radius: 6px; }
.att-box { color: #556271; border: 2px solid #add5f4; padding: 10px 12px 10px 73px; position: relative;
background-image: url("../img/02/at_bg.png");
background-position: -12px -24px;
background-size: 76px auto;
background-repeat: no-repeat;
border-radius: 6px; }
.att-box p { font-weight: 500; line-height: 1.4; }
.att-box:before { content: "注意！"; font-weight: 700; position: absolute;
top: 7px; left: 12px; }
.step-in01 { background: #ebf4fc; padding: 11px 13px; border-radius: 6px; }
.step-in02 { border: 1px solid #556271; border-radius: 6px; }
.step-in03 { border-radius: 6px; }
@media all and (max-width: 560px) {
.step-box { width: 100%; }
.att-box { padding: 48px 12px 12px; }
.step-in01 { margin-bottom: 15px !important; }
}



/* 周辺情報 */
.img_type01 { box-shadow: 0 0 3px rgba(0, 0, 0, 0.3); }
.side-index .menu-base.menu-cat1 .cat-top span.cat-ttl-2L { padding-top: 24px !important; padding-bottom: 24px !important; }


/* 共通２ */
.mgB0 { margin-bottom: 0 !important; }
.mgB6 { margin-bottom: 6px !important; }
.mgB10 { margin-bottom: 10px !important; }
.mgB15 { margin-bottom: 15px !important; }
.mgB20 { margin-bottom: 20px !important; }
.mgB30 { margin-bottom: 30px !important; }
.mgB40 { margin-bottom: 40px !important; }
.mgB50 { margin-bottom: 50px !important; }
.mgB60 { margin-bottom: 60px !important; }
.mgT0 { margin-top: 0 !important; }
.mgT6 { margin-top: 6px !important; }
.mgT10 { margin-top: 10px !important; }
.mgT13 { margin-top: 13px !important; }
.mgT20 { margin-top: 20px !important; }
.mgT24 { margin-top: 24px !important; }
.mgT30 { margin-top: 30px !important; }
.mgT40 { margin-top: 40px !important; }
.mgT50 { margin-top: 50px !important; }
.mgT60 { margin-top: 60px !important; }
.mgTM5 { margin-top: -5px !important; }
.mgTM10 { margin-top: -10px !important; }
.mgTM20 { margin-top: -20px !important; }
.mgRLA { margin-left: 52%; }
.fnt_500 { font-weight: 500 !important; }
.fnt_700 { font-weight: 700 !important; }
.txt_kk { position: relative; left: -5px; }
.txt_lsm5 { letter-spacing: -5px; }
.txt_lsm30 { letter-spacing: -3px; }
.txt_lsm10 { letter-spacing: -1px; }
.txt_lsmT { letter-spacing: -10px; }
.txt_lsm03 { letter-spacing: -0.3px; }
.txt_lsp01 { letter-spacing: 0.1px; }
.txt_lsp02 { letter-spacing: 0.2px; }
.txt_90 { font-size: 90%; }
.txt_80 { font-size: 80%; }
.txt_70 { font-size: 70%; }
.txt_60 { font-size: 60%; }
.txt_100 { font-size: 100% !important; }
.txt_110 { font-size: 110%; }
.txt_120 { font-size: 120%; }
.txt_130 { font-size: 130%; }
.txt_lh13 { line-height: 1.3 !important; }
.txt_lh14 { line-height: 1.4 !important; }
.txt_lh15 { line-height: 1.5 !important; }
.txt_lh16 { line-height: 1.6 !important; }
.txt_lh17 { line-height: 1.7 !important; }
.txt_lh18 { line-height: 1.8 !important; }
.txt_mk { padding: 0 4px 1px; line-height: 1.1; background: #e85298; font-weight: bold; color: #fff; margin-right: 3px; top: -2px; position: relative; font-size: 90%; }
.txt_ul { padding-bottom: 1px; border-bottom: 1px solid #444; }
.txt-cc { text-align: center; }
.txt-rc,.txt-rr,.txt-rl { text-align: right; }
.txt-lc { text-align: left; }
.txt-cr { text-align: center; }
.txt-cl { text-align: center; }
.spB { display: none; }
.spBB { display: none; }
.pcB { display: inherit; }
.spB2 { display: none; }
.pcB2 { display: inherit; }
.spB3 { display: none; }
.pcB3 { display: inherit; }
.spB4 { display: none; }
.pcB4 { display: inherit; }
.spB5 { display: none; }
.pcB5 { display: inherit; }
.spB6 { display: none; }
.pcB6 { display: inherit; }
.fs-it { font-style: italic !important; padding-right: 2px; }
@media all and (max-width: 780px) {
.spB6 { display: inherit; }
.pcB6 { display: none; }
}
@media all and (max-width: 736px) {
.mgRLA { margin-left: 0; }
.txt-rc { text-align: center; }
.txt-lc { text-align: center; }
.txt-cr { text-align: right; }
.txt-cl,.txt-rl { text-align: left; }
.spB { display: inherit; }
.pcB { display: none; }}
@media all and (max-width: 560px) {
.spB5 { display: inherit; }
.pcB5 { display: none; }
}
@media all and (max-width: 480px) {
.spB4 { display: inherit; }
.pcB4 { display: none; }
}
@media all and (max-width: 420px) {
.spB2 { display: inherit; }
.pcB2 { display: none; }
}
@media all and (max-width: 388px) {
.spB3 { display: inherit; }
.pcB3 { display: none; }}

/* ディスクレーマー */
.disc-ttl { color: #155268; font-size: 130%; font-weight: 700; padding-bottom: 8px; }
.disc-space { width: 16px; display: inline-block; }
.remodal {
    max-width: 760px !important;
}
.modal-confirm .logo-full {
    width: 360px;
    margin: 30px auto;
}

@media all and (max-width: 736px) {
    .modal-confirm .logo-full {
        width: 180px;
        margin: 20px auto;
    }
}

.modal-confirm .logo-full img {
    width: 100%;
    height: auto;
}

.modal-confirm .txt-confirm {
    text-align: left;
    font-size: 14px;
    line-height: 1.857;
    margin: 0 5px;
    padding: 1.5em 0;
    border-top: 3px solid #00a1ac;
}

@media all and (max-width: 736px) {
    .modal-confirm .txt-confirm {
        padding: 20px 0;
        font-size: 14px;
        margin: 0 5px;
        line-height: 1.5;
    }
}

.modal-confirm .bx-confirm {
    background-color: #eff8fd;
    padding: 30px;
    font-size: 16px;
	font-weight: bold;
	color: #545455;
}

@media all and (max-width: 736px) {
    .modal-confirm .bx-confirm {
        padding: 15px;
		font-size: 14px;
    }
	.remodal { padding: 20px !important; }
.disc-ttl { cfont-size: 120%; line-height: 1.4; }
.disc-space { width: 16px; display: block; }
}

.modal-confirm .bx-confirm p {
    margin-bottom: 1em;
    text-align: left;
    line-height: 1.5;
}

.modal-confirm .bx-confirm .btn-wrapper > * {
    display: inline-block;
    width: 200px;
    height: 50px;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    margin: 20px;
    line-height: 50px;
}

@media all and (max-width: 736px) {
    .modal-confirm .bx-confirm .btn-wrapper > * {
        width: 42%;
        height: 44px;
        line-height: 44px;
        font-size: 16px;
        margin: 10px;
    }
}

.modal-confirm .bx-confirm .btn-wrapper .remodal-confirm-agree {
    background-color: #0599e1;
	position: relative;
	z-index: 5;
}
.modal-confirm .bx-confirm .btn-wrapper .remodal-confirm-agree:before,
.modal-confirm .bx-confirm .btn-wrapper .remodal-confirm-agree:after {
width: 100%;
height: 10px;
left: 0;
content: "";
position: absolute;
z-index: -2;
border-radius: 4px;
}
.modal-confirm .bx-confirm .btn-wrapper .remodal-confirm-agree:before {
background-color: #2382b1;
bottom: -5px;}
.modal-confirm .bx-confirm .btn-wrapper .remodal-confirm-agree:after {
background-color: #0599e1;
bottom: 0;}

.modal-confirm .bx-confirm .btn-wrapper .remodal-confirm-disagree {
    background-color: #db64be;
	position: relative;
	z-index: 5;
}
.modal-confirm .bx-confirm .btn-wrapper .remodal-confirm-disagree:before,
.modal-confirm .bx-confirm .btn-wrapper .remodal-confirm-disagree:after {
width: 100%;
height: 10px;
left: 0;
content: "";
position: absolute;
z-index: -2;
border-radius: 4px;
}
.modal-confirm .bx-confirm .btn-wrapper .remodal-confirm-disagree:before {
background-color: #ac4192;
bottom: -5px;}
.modal-confirm .bx-confirm .btn-wrapper .remodal-confirm-disagree:after {
background-color: #db64be;
bottom: 0;}

.modal-confirm .bx-confirm .btn-wrapper .remodal-confirm-agree,
.modal-confirm .bx-confirm .btn-wrapper .remodal-confirm-disagree {
box-shadow: 0 7px 5px rgba(0, 0, 0, 0.3); }
.modal-confirm .bx-confirm .btn-wrapper .remodal-confirm-agree:hover,
.modal-confirm .bx-confirm .btn-wrapper .remodal-confirm-disagree:hover {
filter:alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;}
	



/* 動画リンク非表示 */
.top-index div.menu-base:nth-child(1) ul li:nth-child(4) ul li:nth-child(2),
.drawer-nav p + div ul li:nth-child(4) ul li:nth-child(2),
.top-index div.menu-base:nth-child(2) ul li:nth-child(1) ul li:nth-child(13),
.top-index div.menu-base:nth-child(2) ul li:nth-child(1) ul li:nth-child(14),
.drawer-nav p + div + div ul li:nth-child(1) ul li:nth-child(13),
.drawer-nav p + div + div ul li:nth-child(1) ul li:nth-child(14),
.top-index div.menu-base:nth-child(3) ul li:nth-child(1) ul li:nth-child(8),
.top-index div.menu-base:nth-child(3) ul li:nth-child(2) ul li:nth-child(4),
.drawer-nav p + div + div + div ul li:nth-child(1) ul li:nth-child(8),
.drawer-nav p + div + div + div ul li:nth-child(2) ul li:nth-child(4),
.grp01_01 .side-index ul li:nth-child(4) ul li:nth-child(2),
.grp01_02 .side-index ul li:nth-child(4) ul li:nth-child(2),
.grp01_03 .side-index ul li:nth-child(4) ul li:nth-child(2),
.grp01_04 .side-index ul li:nth-child(4) ul li:nth-child(2),
.grp02_01 .side-index ul li:nth-child(1) ul li:nth-child(13),
.grp02_01 .side-index ul li:nth-child(1) ul li:nth-child(14),
.grp02_02 .side-index ul li:nth-child(1) ul li:nth-child(13),
.grp02_02 .side-index ul li:nth-child(1) ul li:nth-child(14),
.grp02_03 .side-index ul li:nth-child(1) ul li:nth-child(13),
.grp02_03 .side-index ul li:nth-child(1) ul li:nth-child(14),
.grp03_01 .side-index ul li:nth-child(1) ul li:nth-child(8),
.grp03_01 .side-index ul li:nth-child(2) ul li:nth-child(4),
.grp03_02 .side-index ul li:nth-child(1) ul li:nth-child(8),
.grp03_02 .side-index ul li:nth-child(2) ul li:nth-child(4)
{ display: none !important; }


/* TOI追加 */
.top-new-menu { display: flex; flex-wrap: wrap; justify-content: space-between; margin: -40px auto 10px; position: relative; z-index: 7; width: 990px; padding: 0 25px; }
.top-new-menu2_wrap { width: 990px; margin: 0 auto; }
.top-new-menu2 { background-color: #b7dff7; display: flex; flex-wrap: wrap; justify-content: space-between; margin: 40px auto 10px; box-shadow: 0 0 11px rgb(133 175 200 / 70%); padding: 60px 25px 20px; width: 940px; border-radius: 8px; position: relative; }
.top-new-menu2 h2 { position: absolute; top: 19px; left: 25px; color: #fff; font-weight: 700; font-size: 105%; text-shadow: 0 0 4px #234a61; line-height: 1.35; }
.top-sc { width: 23%; font-size: 80%; font-weight: 500; color: #2B4064; text-align: center; line-height: 1.2; }
.top-sc img { margin-bottom: 13px; border-radius: 4px; }
.top-new-menu-btn {
width: 48.5%;
border-radius: 8px;
background: #fff;
box-shadow: 0 0 11px rgb(133 175 200 / 70%);
padding: 30px;
text-align: center; }
.top-new-menu-btn:hover { color: #2a9dea; }
.top-new-menu-btn span { display: flex; align-items: center; align-items: center; font-weight: 700; justify-content: center; }
.top-new-menu-btn span img { width: 40px; height: auto; margin-right: 14px; }
.top-sub { position: relative; }
.top-sub:after { content: "\f35d"; font-family: "Font Awesome 5 Free"; font-size: 80%;
position: relative; margin-left: 7px; }
.top-sub:before { content: "（発注サイトを開きます）"; position: absolute; bottom: -15px; left: 50%; font-size: 14px;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%); }
@media all and (max-width: 1048px) {
.top-new-menu-btn { padding: 23px; }
}
@media all and (max-width: 736px) {
.anch_sc { padding-top: 40px; margin-top: -40px; }
.top-new-menu2 h2 { top: 18px; left: 20px; }
.top-new-menu2_wrap { padding: 0 20px; margin-bottom: 54px; width: 100%; }
.top-new-menu2 { width: 100%; padding: 40px 15px 15px; }
.top-sc { width: 48%; margin-top: 20px; }
.top-new-menu { width: 100%; margin-bottom: 32px; padding: 0 20px; }
.top-new-menu-btn { width: 48%; padding: 24px 20px 32px; }
.top-new-menu-btn span { flex-flow: column; font-size: 16px; line-height: 1.5; }
.top-new-menu-btn span img { display: block; margin-right: 0; padding-bottom: 6px; }
.top-sub:before { font-size: 12px; white-space: nowrap; bottom: -20px; }
.top-sub:after { position: absolute; margin-left: 0; right: 3%; bottom: 12px; font-size: 100%; }
}
@media all and (max-width: 560px) {
.top-new-menu2 h2 { top: 16px; }
.top-new-menu2 { padding-top: 50px; }
.top-sc { width: 100%;margin-top: 32px; }
.top-sc img { margin-bottom: 10px; } }
@media all and (max-width: 510px) {
.top-new-menu { margin: -24px auto 20px; }
.top-new-menu-btn { padding: 16px 10px 28px; }
.top-new-menu-btn span { flex-flow: column; font-size: 3vw; }
.top-new-menu-btn span img { padding-bottom: 7px; }
.top-sub:before { font-size: 2.3vw; bottom: -18px; }
.top-sub:after { bottom: 10px; font-size: 90%; }
}

/* 下層追加 */
dl { display: flex; justify-content: flex-start; font-size: 90%; }
dt { margin-right: 7px; font-weight: 700; }
.bg_00 { padding: 10px 15px; background: #efefef; }
.bg_02 {  }
.brd_01 { border-top: 1px solid #efefef; width: 100%; height: 1px; margin: -10px 0 50px; }
@media all and (max-width: 736px) {
dl { display: block; }
}
.bg_01 { border: 1px solid #000; padding: 12px 15px; }
.doc_box01 { width: 43%; }
.doc_box02 { width: 53%; }
.doc_img { width: 80%; }
@media all and (max-width: 736px) {
.doc_img { width: 100%; } }

.color_bl { color: #2a9dea; }
@media all and (max-width: 420px) {
.doc_box01 { width: 100%; margin-bottom: 20px; }
.doc_box02 { width: 100%; }
}


.sub-link-box2 { margin: 20px 0; list-style: none; width: 188px !important; }
.sub-link-box2 li { text-align: left; display: flex; }
.sub-link-box2 li a { display: block; background: #2a9dea; color: #fff; line-height: 1.3; padding: 7px 6px 8px 30px; font-size: 110%; font-weight: 500; position: relative; display: flex; align-items: center; width: 100%; justify-content: flex-start; }
.sub-link-box2 li a:hover { background: #70b4e2; }
.sub-link-box2 li a:before { content: "\f054"; font-family: "Font Awesome 5 Free"; position: absolute;
top: 50%;
left: 15px;
transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
font-size: 70%; font-weight: 700; }
.img_shd { box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2); }
ul.circle_list.color_bl { margin-top: 10px !important; margin-bottom: 40px; }
ul.circle_list.color_bl li { font-weight: 700; margin-bottom: 3px; font-size: 90%; }
ul.circle_list.color_bl li:before { color: #2a9dea; }

/* video */
.video_wrap{
position: relative;
padding-bottom: 56.25%;
height: 0;
overflow: hidden;
}
.video_wrap iframe, .video_wrap object, .video_wrap embed{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}


/* modaal */
.mod_wrap { display: flex; justify-content: space-between; flex-wrap: wrap; padding: 20px; }
.mod_img { width: 32%; }
.mod_img2 { display: block; }
.mod_wrap img, .mod_img2 img { border-radius: 8px; }
.mod_txt { width: 66%; }
.spB .mod_wrap { padding: 12px !important; }
@media all and (max-width: 736px) {
.mod_img { width: 48%; }
.mod_txt { width: 48%; }
}
@media all and (max-width: 560px) {
.mod_wrap { padding: 16px; }
.mod_img { width: 100%; margin-bottom: 10px; }
.mod_txt { width: 100%; }
}
.side_mod { background-color: #69bee8; color: #fff; font-weight: bold; text-align: center; padding: 8px 12px 12px;
background-image: url(../img/common/cat_bg.svg);
background-size: cover;
background-position: center center;}
.side_mod p { margin-bottom: 7px !important; }

.nb_new { margin-bottom: 20px; }
.nb_new_wrap { display: flex; justify-content: space-between; flex-wrap: wrap; }
.nb01 { width: 49%; height: auto; }
.nb02 { width: 49%; height: auto; }
@media all and (max-width: 736px) {
.nb_new { margin-bottom: 13px; }
}
@media all and (max-width: 480px) {
.nb01 { width: 100%; height: auto; }
.nb02 { width: 100%; height: auto; }
.nb_new { margin-bottom: 13px; }
}

/* add 202308 */
.red_mrk { font-size: 70%; padding-right: 5px; position: relative; top: -2px; }
.alt_01 { font-size: 110% !important; color: #fff; background: #de0000; margin-bottom: 0 !important; text-align: center; padding: 5px; }
.attention_box2 { border: 3px solid #ddd; padding: 13px 16px; background: #fff; width: 100%; }
.attention_R { width: 54%; }
.attention_L { width: 43%; }
@media all and (max-width: 736px) {
.attention_R { width: 100%; }
.attention_L { width: 100%; margin-bottom: 7px; }
}


