@charset "utf-8";
/* CSS Document */
/*section{*/
/*	clear:both;*/
/*	width:100%;	*/
/*}*/
/*section:after {*/
/*  content: ".";*/
/*  display: block;*/
/*  height: 0;*/
/*  clear: both;*/
/*  visibility: hidden;*/
/*}*/
	
.wrap{
	width:1200px;
	min-height:80px;
	margin:0 auto;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.wrap:before,
.wrap:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.head_logo{
	margin-top:0;
	min-width:260px;
	float:none;
}
.head_logo img{
width: auto;
height: auto;
max-height:58px;
}


.head_navi{
	float:none;
    min-width:220px;
}
.head_navi li{
	display:inline-block;
	float:left;
	margin-left:1em;
	font-size:1.2rem;
}
.head_navi li.ml2em{
	margin-left:2em;
}
.head_navi li.ml2em a.tomail{
display: flex;
  justify-content: center;
  align-items: center;
font-size: 14px;
font-weight: bold;
height: 40px;
color: #fff;
background-color: #c80f0f;
padding: 0 0.5em;
border-radius: 0.5em;
letter-spacing: 1px;
float: right;
}
.head_navi li.ml2em a.tomail:hover{
opacity: 0.7;
}
.head_navi a.tels img{
float: left;
margin-right: 0.5em;
display: block;
}
.head_navi a.tels strong{
font-size:20px;
font-weight: bold;
display: block;
float: left;
}
.head_navi a.tels span{
margin-top: 0.5em;
font-size: 12px;
display: block;
letter-spacing: 1px;
float: left;
}


.tria:before{
	content:"▶";
	color:#c80f0f;
}

nav:not(.f-nav):not(#global-nav){
	clear:both;
	width:100%;
	background-color:#f2f2f2;
	height:40px;
display: flex;
  justify-content: center;
  align-items: center;
}
nav:not(.f-nav):not(#global-nav):after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

ul#menu-gnavi{
	width:1200px;
	margin:0;
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: space-between;
}
ul#menu-gnavi li{
	width:auto;
	height:40px;
	text-align:center;
border-collapse:collapse;
border-spacing:0;
empty-cells:show;

display: flex;
  justify-content: center;
  align-items: center;
}

ul#menu-gnavi li a{
	width:100%;
	height:40px;
	font-size:1.4rem;
	display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 2em;
}

ul#menu-gnavi li a.active,
ul#menu-gnavi li a:hover{
	color:#c80f0f;
}


nav:not(.f-nav):not(#global-nav) ul#menu-gnavi li.linkbox{
display: none;
}

.page_mv{
	clear:both;
	width:100%;
	height:130px;
	background-color:#c80f0f;
	text-align:center;
	color:#FFF;
	display: flex;
  justify-content: center;
  align-items: center;
}
.page_mv:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}
#breadcrumbs{
	width:1200px;
	margin:0 auto;
	text-align:left;
	font-size:1.2rem;
	padding:1em 0;
}
#breadcrumbs a{
	font-size:1.2rem;
}
.contents{
	width:70%;
	margin:0;
    float: left;
	padding-bottom:3vw;
	background-color:#FFF;
}

.contents img{
margin-bottom:2em;
max-width: 100%;
}

.contents > img.topmv{
max-width: 100%;
width: 100%;
height: auto;
}
.contents time{
font-size: 12px;
color: #F57A7A;
}

div#toc_container {
margin:1em 0 2em 0;
}

h2.sub_title{
	clear:both;
	text-align:center;
	font-size:2rem;
	font-weight:bold;
	padding:1em 0;
	border-top:8px solid #c80f0f;
	position:relative;
	margin:1em 0;
    line-height: 1.5;
}
h2.sub_title:before{
	content:"";
	width:49%;
	height:10px;
	display:block;
	background-color:#FFF;
	position:absolute;
	top:-9px;
	left:0;
}
h2.sub_title:after{
	content:"";
	width:49%;
	height:10px;
	display:block;
	background-color:#FFF;
	position:absolute;
	top:-9px;
	right:0;
}

a.btn{
	font-size:1.8rem;
	padding:1.5em 6em;
	display: inline-block;
	margin:0 auto;
	border:1px solid #999;
	color:#999;
	border-radius:4px;
}
a.btn:hover{
	background-color:#999;
	color:#FFF;
}

/*---------------------------------------------*
* f-float
*----------------------------------------------*/
aside.f-float{
width: 100%;
height:auto;
background-color: #c80f0f;
position: fixed;
bottom: 0;
left: 0;
z-index: 888;
}
aside.f-float .wrap:before,
aside.f-float .wrap:after{
display: none;
}
aside.f-float .wrap{
padding:0.5em 0;
width: 100%;
max-width: 1200px;
height: auto;
min-height: inherit;
margin: 0 auto;
display: flex;
  align-items:center;
justify-content: space-between;
}
aside.f-float .wrap p{
margin: 0;
padding: 0;
}
aside.f-float .wrap img{
height:40px;
width: auto;
margin-right: 0.5em;
}
aside.f-float .wrap .tels{
color: #fff;
}
aside.f-float .wrap .tels .freetel{
	display:flex;
	justify-content:flex-start;
	align-items: center;
}

aside.f-float .wrap .tels a{
color: #fff;
font-weight: bold;
font-size: 30px;
}
aside.f-float .wrap .tels .etime{
padding-left:3.5em;
}
aside.f-float .wrap .mails{
font-size: 18px;
font-weight: bold;
color: #fff;
}
aside.f-float .wrap .mails a{
color: #c80f0f;
background-color: #fff;
padding: 0.25em 0.5em;
margin-left: 1em;
font-size: 21px;
font-weight: bold;
}
aside.f-float .wrap .mails a:hover{
opacity: 0.8;
}

.hidden_sp{
display: block;
}
.hidden_pc,
#humbt,
ul#menu-gnavi li#close,
#hum{
	display:none;
}

#page-top{
	width:50px;
	height:50px;
	display:block;
	position:fixed;
	right:50px;
	bottom:120px;
	cursor:pointer;
	z-index:500;
}
#page-top img{
	width:100%;
	height:auto;
}


.column.wrap{
	display:flex;
	justify-content:flex-start;
	align-items:flex-start;
    justify-content: space-between;
    padding-bottom: 50px;
}
.column.wrap .contents{
width: 70%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
line-height: 1.75;
}
.column.wrap .contents:after {
    display:none;
}

.column.wrap .l-sidebar{
width: 25%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

.column.wrap .contents ul.fact_list{
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding:3vw 0;
}
.column.wrap .contents ul.fact_list li{
    width: 100%;
    border-top: 1px solid #c9c9c9;
}
.column.wrap .contents ul.fact_list li:nth-last-of-type(1){
border-bottom: 1px solid #c9c9c9;
}
.column.wrap .contents ul.fact_list li a{
    display: block;
    padding:1.5em 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    line-height: 2;
    font-size: 1.6rem;

    position: relative;
    }
.column.wrap .contents ul.fact_list li a .data-area {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    font-size: 1.1rem;
    color: #6d6d6d;
}
.column.wrap .contents ul.fact_list li a .data-area time {
    color: #F57A7A;
    font-weight: bold;
    padding-right: 1em;
}
.column.wrap .contents ul.fact_list li a .data-area p{
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    font-size: 1.4rem;
    line-height: 1.86;
    letter-spacing: .07rem;
}
.column.wrap .contents ul.fact_list li a h2{
    margin:0.5em 0;
    padding:0 0 0 0;
    font-size:1.8rem;
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: .11rem;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border-bottom: none;
}
.column.wrap .contents ul.fact_list li a p{
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    font-size: 1.4rem;
    line-height: 1.86;
    letter-spacing: .07rem;
    margin: 0;
}

#breadcrumbs.wide{
width: 1200px;
}



aside.sidemenu,
aside.l-sidebar{
padding:0;
width: 26%;
float: right;
}
aside.sidemenu h2 {
  font-size: 1.8rem;
  font-weight: bold;
  color: #fff;
  padding: 0 1em;
  line-height: 2;
  background-color: #F57A7A;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 1em;
}

aside.sidemenu ul{
margin: 1em 0;
}
aside.sidemenu ul a{
padding: 1em;
display: block;
width: 100%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
border-bottom: 1px solid #ccc;
color: #444;
}
aside.sidemenu ul a:hover{
background-color: #f9e7e7;
}
aside.sidemenu .banner{
margin-top: 3em;
}


aside.l-sidebar h3{
font-size: 1.6rem;
text-align: left;
padding:0.5em 1em;
margin-bottom: 1em;
background-color:#F57A7A;
color: #ffffff;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
aside.l-sidebar h3:after{
display: none;
}
aside.l-sidebar div{
padding:1vw 0;
}
aside.l-sidebar div li{
line-height: 2.5;
padding: 0 1em;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

aside.l-sidebar a{
display: block;
width: 100%;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}

aside.l-sidebar .search form{
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
aside.l-sidebar .search input[type=text]{
width:80%;
padding:0.5em 1em;
font-size: 16px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
aside.l-sidebar .search button {
    background-color: #C80F0F;
    width: 20%;
    height: 37px;
    font-size: 14px;
    color: #fff;
    border: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    cursor: pointer;
display: flex;
  justify-content: center;
  align-items: center;

}
aside.l-sidebar .search button img{
max-height: 30px;
}

aside.l-sidebar label.screen-reader-text{
display: none;
}
aside.l-sidebar select{
width: 100%;
padding:0.5em 1em;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
    border: 1px solid #ccc;
}

aside.l-sidebar select option{
padding:1em;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

	/*iPhoneセレクト拡大防止*/
	select,option,textarea,input{
	font-size:16px;
	}


.pager{
padding-top: 2em;
display: flex;
  justify-content: center;
  align-items: center;
}
.pager h2{
display: none;
}
.pager nav{
width: 100%;
}
.pager nav .nav-links{
display: flex;
  justify-content: center;
  align-items: center;
}

.pager a:hover, .pager span.active {
    background-color: #C80F0F;
    color: #ffffff;
}
.pager a, .pager span {
    margin: 0 .7rem;
    min-width: 3rem;
    height: 3rem;
    display: flex;
  justify-content: center;
  align-items: center;
    font-size: 1.4rem;
    white-space: nowrap;
    border: 1px solid #C80F0F;
    color: #C80F0F;
    background: #fff;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.pager .dots,
.pager .current{
border: none;
}



/*---------------------------------------------*
* トップ・下層ページ見出し
*----------------------------------------------*/
.contents.page h2:not(.sub_title),
.topcontants .leftbox h2{
font-size:2rem;
font-weight: bold;
color: #444;
padding: 0 1em;
line-height:2;
background-color: #f9e7e7;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
margin-bottom: 1em;
border-left: 5px solid #c80f0f;
}

.contents.page > div:not(.red_box):not(.pink_box) > h3,
.contents.page > h3,
.topcontants .leftbox h3{
font-size: 1.8rem;
font-weight: bold;
line-height: 2;
color: #444;
padding: 0 1em;
border-bottom: 2px solid #c80f0f;
border-left: 5px solid #c80f0f;
margin-bottom:1.5em;
}
.contents.page h4,
.topcontants .leftbox h4{
font-size: 1.6rem;
font-weight: bold;
line-height: 2;
color: #444;
background-color: #f9e7e7;
padding: 0 1em;
border-left: 5px solid #c80f0f;
margin-bottom:1.5em;
}
.contents.page h5,
.topcontants .leftbox h5{
font-size: 1.6rem;
font-weight: bold;
line-height: 2;
color: #444;
padding: 0 1em;
border-top: 1px solid #c80f0f;
border-bottom: 1px solid #c80f0f;
margin-bottom:1.5em;
}
.contents.page h6,
.topcontants .leftbox h6{
font-size: 1.6rem;
font-weight: bold;
line-height: 2;
color: #444;
padding: 0 1em;
border-bottom: 1px solid #c80f0f;
margin-bottom:1.5em;
}





aside.related > h2{
color: #C90F0F;
margin-bottom: 1em;
font-weight: bold;
}
ul.related-list{
width:100%;
	display:flex;
	justify-content:flex-start;
	align-items: center;
justify-content: space-between;
-ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
ul.related-list li{
width:100%;
border-top: 1px solid #c9c9c9;
}
ul.related-list li a{
display: block;
padding: 27px 50px 27px 0;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
line-height:2;
font-size: 1.6rem;
position: relative;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all  0.3s ease;
}
ul.related-list li a:after{
content: "";
width: 10px;
height: 18px;
display: block;
background-image: url("../images/icon-right-solid-bk.svg");
background-size: cover;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all  0.3s ease;
  position: absolute;
  right: 0;
  top:50%;
  margin: -9px 30px 0 0;
}
ul.related-list li a:hover:after{
  margin: -9px 20px 0 0;
}
ul.related-list li a:hover{
background-color: #F7F7F7;
}

ul.related-list li:nth-last-child(1){
border-bottom: 1px solid #c9c9c9;
}
ul.related-list li h3.title{
text-align: left;
font-size: 1.6rem;

font-weight: normal;
}

ul.related-list p{
overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp:2;
font-size: 1.4rem;
line-height: 1.86;
letter-spacing: .07rem;
margin: 0;
}
ul.related-list .data-area{
	display:flex;
	justify-content:flex-start;
	align-items: center;
    font-size: 1.1rem;
color: #6d6d6d;
}
ul.related-list .data-area time{
    color: #F57A7A;
    font-weight: bold;
    padding-right:1em;
}
ul.related-list .data-area .cat span{
text-decoration: underline;
}

ul.related-list h3{
margin: 0;
}
ul.related-list li a{
    display: block;
    padding:0.5em 0;
}

nav:not(.f-nav):not(#global-nav) ul#menu-gnavi li.sp{
display: none;
}


@media screen and (max-width:1200px) {


.wrap{
	width:98%;
	min-height:inherit;
	height:auto;
	}
	ul#menu-gnavi{
	width:98%;
	margin:0 auto;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	}
	ul#menu-gnavi li{
		width:auto;
	}


.contents {
    margin: 0 auto;
    padding-bottom: 60px;
    background-color: #FFF;
}

ul#menu-gnavi li a {
    width: 100%;
    height: auto;
    font-size: 1.4rem;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 0.5em;
}


h2.sub_title:before{
	content:"";
	width:48%;
	height:10px;
	display:block;
	background-color:#FFF;
	position:absolute;
	top:-9px;
	left:0;
}
h2.sub_title:after{
	content:"";
	width:48%;
	height:10px;
	display:block;
	background-color:#FFF;
	position:absolute;
	top:-9px;
	right:0;
}


/*---------------------------------------------*
* f-float
*----------------------------------------------*/
aside.f-float .wrap{
width:96%;
max-width:96%;
}

}
@media screen and (max-width:1000px) {
body{
	padding:0 0 0 0;

}
	.wrap{
	width:94%;
	}
nav ul#menu-gnavi li.sp{
display:block;
}

nav:not(.f-nav):not(#global-nav) {
    height: auto;
	padding:0.5em 0;
}

	ul#menu-gnavi{
	width:94%;
	margin:0 auto;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	}
	ul#menu-gnavi li{
		width:auto;
		height:1.5em;
	}
	ul#menu-gnavi li a{
		font-size:1.6vw;
        padding: 0 0.5em;
	}

#breadcrumbs{
	width:94%;
}
.contents{
	width:94%;
	padding-bottom:50px;
}
.contents > img.topmv{
max-width: 100%!important;
width: 100%!important;
height: auto;
}

h2.sub_title:before{
	content:"";
	width:48.5%;
	height:10px;
	display:block;
	background-color:#FFF;
	position:absolute;
	top:-9px;
	left:0;
}
h2.sub_title:after{
	content:"";
	width:48.5%;
	height:10px;
	display:block;
	background-color:#FFF;
	position:absolute;
	top:-9px;
	right:0;
}



/*---------------------------------------------*
* f-float
*----------------------------------------------*/
aside.f-float .wrap{
padding:0.5em 0;
width:96%;
max-width:96%;
height: auto;
}
aside.f-float .wrap img{
height:20px;
}
aside.f-float .wrap .tels a{
font-size:20px;
}
aside.f-float .wrap .tels .etime{
padding-left:2.5em;
font-size: 12px;
}
aside.f-float .wrap .mails{
font-size:16px;
}
aside.f-float .wrap .mails a{
font-size:18px;
margin-left: 0.5em;
}

.column.wrap .contents{
display: flex;
-webkit-flex-wrap:wrap;
-ms-flex-wrap:wrap;
flex-wrap:wrap;
}
.column.wrap .contents{
-webkit-box-ordinal-group:1;
-ms-flex-order:1;
-webkit-order:1;
order:1;
}
.column.wrap .contents aside.sidemenu{
-webkit-box-ordinal-group:2;
-ms-flex-order:2;
-webkit-order:2;
order:2;
}
.column.wrap .contents aside.sidemenu,
.topcontants aside.sidemenu {
    width:70%;
    margin: 2em auto;
}
.column.wrap .contents aside.sidemenu .banner,
.topcontants aside.sidemenu .banner {
text-align: center;
}


.wrap.page{
display: flex;
-webkit-flex-wrap:wrap;
-ms-flex-wrap:wrap;
flex-wrap:wrap;
}

.wrap.page .contents{
-webkit-box-ordinal-group:1;
-ms-flex-order:1;
-webkit-order:1;
order:1;
}
aside.l-sidebar,
aside.sidemenu{
-webkit-box-ordinal-group:2;
-ms-flex-order:2;
-webkit-order:2;
order:2;
}
aside.sidemenu{
padding:0;
width: 70%;
float:none;
margin: 1em auto;
}
aside.sidemenu h2 {
  font-size: 1.8rem;
  font-weight: bold;
  color: #fff;
  padding: 0 1em;
  line-height: 2;
  background-color: #F57A7A;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 1em;
}

aside.sidemenu ul{
margin: 1em 0;
}
aside.sidemenu ul a{
padding: 1em;
display: block;
width: 100%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
border-bottom: 1px solid #ccc;
color: #444;
}
aside.sidemenu ul a:hover{
background-color: #f9e7e7;
}
aside.sidemenu .banner{
margin-top: 3em;
  text-align: center;
}

}

@media screen and (max-width:768px) {

	.wrap{
	width:94%;
    display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
	}
	.head_navi li.sphide{
		display:none;
	}

.hidden_sp{
display:none;
}
.hidden_pc{
display: block;
}



#humbt{
	display:flex;
	justify-content:flex-end;
	align-items: center;
}
#humbt label,
#humbt a{
	margin-left:1em;

}

.head_navi svg{
	width:35px;
	height:35px;
}

.head_navi svg#email_icon {
    display: none;
}

	nav:not(.f-nav):not(#global-nav){
		display:none;
		position:fixed;
		top:0;
		left:0;
		width:100%;
		height:100%;
		z-index:500;
	}
#hum:checked + nav:not(.f-nav):not(#global-nav){
	display:block;
}

ul#menu-gnavi{
width:90%;
height:100%;
margin:0 auto;
display:block;
padding:0 1em;
overflow-y:auto;
}
ul#menu-gnavi li{
	width:100%;
	height:auto;
	text-align:center;
border-collapse:collapse;
border-spacing:0;
empty-cells:show;
clear:both;
display: block;
  justify-content: center;
  align-items: center;
  border-left: none;
  border-bottom:1px solid #FFF;
  margin-bottom:0;
  padding:0;
}
ul#menu-gnavi li#close{
	display: block;
	font-size:4rem;
	text-align:right;
	margin:0;
	padding:0 0 0.5em 0;
	min-height:inherit;
}
ul#menu-gnavi li a{
	width:100%;
	height:2.75em;
	font-size:2rem;
	display: flex;
  justify-content: center;
  align-items: center;

}

nav ul#menu-gnavi li.linkbox{
width:100%;
padding:0.5em 0 0 0;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
display: block;
}

nav ul#menu-gnavi li.linkbox div{
background-color: #2a3f98;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
padding:1em;
display: block;
margin: 0 auto;
clear: both;
}
nav ul#menu-gnavi li.linkbox div h2{
font-size:1.6rem;
font-weight: bold;
color: #fff;
display: flex;
  justify-content: center;
  align-items: center;
}
nav ul#menu-gnavi li.linkbox div h2 img{
width: auto;
height: auto;
max-height: 1.8rem;
margin-right: 0.5em;
}
nav ul#menu-gnavi li.linkbox div > ul a{
font-size: 1.6rem;
font-weight: bold;
	display:flex;
	justify-content:flex-start;
	align-items: center;
    justify-content: space-between;
color: #444444;
padding:0.5em 0.5em;
background-color: #fff;
width: 100%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
height:auto;
}
nav ul#menu-gnavi li.linkbox div > ul a strong{
color: #c80f0f;
}
nav ul#menu-gnavi li.linkbox div > ul a:after{
content: "▶";
color: #c80f0f;
}
nav ul#menu-gnavi li.linkbox div > ul a:hover{
opacity: 0.8;
}
nav ul#menu-gnavi li.linkbox div > ul li{
margin-top: 0.5em;
}

#page-top{
	width:30px;
	height:30px;
	display:block;
	position:fixed;
	right:20px;
	bottom:20px;
	cursor:pointer;
}
#page-top img{
	width:30px;
	height:auto;
}

#breadcrumbs{
	width:94%;
}
.contents{
	width:94%;
	padding-bottom:5vw;
}
#breadcrumbs.wide{
	width:94%;
}


.column.wrap{
	display:flex;
	justify-content:flex-start;
	align-items:flex-start;
    justify-content: space-between;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.column.wrap .contents{
width:100%;
margin: 0 auto;
}
.column.wrap aside.l-sidebar{
width:96%;
margin: 0 auto;
padding:10vw 0;
}
.column.wrap aside.l-sidebar div{
padding: 5vw 0;
}

h2.sub_title:before,
h2.sub_title:after{
	width:48%;
}

.page_mv {
    height: auto;
	padding:1em 0;
}

/*---------------------------------------------*
* f-float
*----------------------------------------------*/
aside.f-float .wrap{
padding:0.5em 0 1.5em 0;
width:96%;
max-width:96%;
height: auto;
}
aside.f-float .wrap img{
height:20px;
}
aside.f-float .wrap .tels a{
font-size:20px;
}
aside.f-float .wrap .tels .etime{
padding-left:2.5em;
font-size: 12px;
}
aside.f-float .wrap .mails{
font-size:12px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
aside.f-float .wrap .mails a{
font-size:14px;
margin:0.25em 0 0 0;
display: block;
}

}
@media screen and (max-width:640px) {



	body{
		padding-top:75px;
	}

	.wrap{
	width:97%;
	margin:0 auto;
	}


.head_navi:nth-of-type(1) {
	display:flex;
	justify-content:flex-end;
	align-items: center;
}
.head_navi li {
    display: inline-block;
    float: left;
    margin-left:2px;
    font-size: 1rem;
}

.head_navi:nth-of-type(1) a{
	font-size:1rem;
}
.head_navi svg {
    width:30px;
    height:30px;
}

ul#menu-gnavi li {
	padding:0;

}
ul#menu-gnavi li#close{
	display: block;
	font-size:2.5rem;
	text-align:right;
	margin:0;
	padding:0 0 0.5em 0;
	min-height:inherit;
}
ul#menu-gnavi li a{
	font-size:1.6rem;
}
	a.btn {
		padding:0.5em 3em;
	}

#breadcrumbs.wide,
#breadcrumbs{
	width:90%;
	margin:0 auto;
    font-size: 10px;
    line-height: 1.5;
}
#breadcrumbs.wide a,
#breadcrumbs a{
    font-size: 10px;
}
.contents{
	width:98%;
	margin:0 auto;
}
h2.sub_title {
line-height: 1.5;
margin: 0 auto;
}
h2.sub_title:before,
h2.sub_title:after{
	width:46%;
}

	/*iPhoneセレクト拡大防止*/
	select,option,textarea,input{
	font-size:16px;
        -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
	}

aside.sidemenu{
width: 100%;
}

}
@media screen and (max-width:375px) {

/*---------------------------------------------*
* f-float
*----------------------------------------------*/
aside.f-float .wrap{
padding:0.5em 0 1.5em 0;
width:96%;
max-width:96%;
height: auto;
}
aside.f-float .wrap img{
height:20px;
}
aside.f-float .wrap .tels a{
font-size:18px;
}
aside.f-float .wrap .tels .etime{
padding-left:2.5em;
font-size: 11px;
}
aside.f-float .wrap .mails{
font-size:11px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
aside.f-float .wrap .mails a{
font-size:12px;
margin:0.25em 0 0 0;
display: block;
}

}

/*==============================
入金テーブル
==============================*/
.payment-table {
  width: 98% !important;
  font-size: 15px !important;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif !important;
  margin-bottom: 2em !important;
  display: table !important;
}

.payment-table,
.payment-table th,
.payment-table td {
  border: 1px solid black !important;
  border-collapse: collapse !important;
  padding: .5em .75em !important;
  line-height: 1.5em !important;
}

.payment-table th {
  background-color: #f5f5f5 !important;
  font-weight: bold !important;
  white-space: nowrap;
  text-wrap: wrap;
}

.payment-table td {
  white-space: normal !important;
}

/*==============================
ボックス
==============================*/

.box01-container {
  /* max-width: 800px; */
  width: 98% !important;
  border: 1px solid #c80f0f !important;
  /* padding: 20px; */
  /* margin: 20px; */
  margin-top: 35px !important;
  margin-bottom: 35px !important;
  font-family: sans-serif !important;
  position: relative !important;
}

.box01-title {
  background: #c80f0f !important;
  color: #fff !important;
  padding: 5px 10px !important;
  display: inline-block !important;
  font-size: 15px !important;
  position: absolute !important;
  top: -15px !important;
  left: 20px !important;
}

.box01-checklist {
  padding: 20px !important;
  padding-bottom: 5px !important;
  margin-top: 20px !important;
  margin-bottom: 10px !important;
  font-size: 15px;
  /* letter-spacing: 0.5em !important;
  line-height: 1.5em !important; */
}

.box01-checklist li {
  margin-bottom: 20px;
}

/*==============================
コラム事業者テーブル
==============================*/

.margin-top-g {
  margin-bottom: 2em;
}

.column-app-table {
  width: 98% !important;
  margin: 0 !important;
  font-size: 15px !important;
  display: table !important;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}

.column-app-table,
.column-app-table th,
.column-app-table td {
  border: 1px solid black !important;
  border-collapse: collapse !important;
  padding: .5em .75em !important;
  white-space: nowrap !important;
}

.column-app-table th {
  background-color: #f5f5f5 !important;
  font-weight: bold !important;
}

.column-app-table a {
  color: #093bc9 !important;
  text-decoration: underline !important;
}

.com-name-col {
  width: 35% !important;
}

.scrollable-table {
  width: 100%;
  display: block !important;
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
}

@media (max-width: 440px) {
  .scrollable-table {
    width: 435px;
  }
}

@media (max-width: 430px) {
  .scrollable-table {
    width: 425px;
  }
}

@media (max-width: 414px) {
  .scrollable-table {
    width: 410px;
  }
}

@media (max-width: 402px) {
  .scrollable-table {
    width: 398px;
  }
}

@media (max-width: 390px) {
  .scrollable-table {
    width: 385px;
  }
}

@media (max-width: 393px) {
  .scrollable-table {
    width: 388px;
  }
}

.scrollable-upper-subs {
  display: none !important;
}

@media (max-width: 768px) {
  .scrollable-upper-subs {
    display: block !important;
    text-align: right !important;
    font-size: 12px !important;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif !important;
  }
}

/*==============================
口コミ
==============================*/

.reviews-box-container {
  display: block;
  width: 100%;
}

.reviews-box-01 {
  padding: 1.5em 2em 1em 4em;
  background-color: #f5f5f5 !important;
  margin-bottom: 2em;
  position: relative;
}

.reviews-box-01::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  width: 5px;
  height: calc(100% - 4em);
  left: 1.5em;
  border-left: solid 1px #c80f0f;
  border-right: solid 1px  #c80f0f;
}

.box-point {
    background: #fff;
    border: 2px solid #c80f0f;
    border-radius: 10px;
    padding: 20px;
    font-size: 1.1em;
    line-height: 1.3;
}

.box-point label {
    font-weight: bold;
    color: #c80f0f;
    display: flex;
    justify-content: center;
    font-size: 1.2em;
}

.box-faq {
    background: #fff;
    border: 2px solid #c80f0f;
    border-radius: 10px;
    padding: 20px;
    font-size: 1.1em;
}

.box-faq label {
    font-weight: bold;
    color: #c80f0f;
    font-size: 1.2em;
    background: #f9e7e7;
    border-bottom: 2px solid #c80f0f;
    border-radius: 3px;
    padding: 10px 20px;
    margin-bottom: 20px;
    display: flex;
}

.box-faq .question {
    font-weight: bold;
    color: #F57A7A;
    margin-bottom: 5px;
    padding: 0 0 1em 0;
}

.box-faq .answer {
    margin-left: 1em;
    margin-bottom: 20px;
}

@media (max-width: 768px) {
    .box-faq .question {
        padding: 0 !important;
        line-height: 1.3;
    }

    .box-faq .answer {
        margin-left: .5em !important;
        line-height: 1.3;
    }
}