@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');
body{
	margin: 0;
	padding: 0;
	font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif !important;
}

.pc{
	display: block;
}
.sp{
	display: none;
}
@media only screen and (max-width:736px) {
	.pc{
	display: none;
}
.sp{
	display: block;
}
}
img{
	max-width: 100%;
}
h1{
	text-align: center;
	font-size: 25px;
	font-weight: bold;
	color: #f4904d;
	padding: 25px 0;
}
h1 img{
	height: 100px;
}
@media only screen and (max-width:736px) {
	h1{
		font-size:16px;
	}
	h1 img{
	height: 50px;
}
}
#main-visual{
	position: relative;
	max-width: 1400px;
	margin: 0 auto;
}
@media only screen and (max-width:736px) {
	#main-visual{
		width:80%;
	}
}
#main-visual h2{
	position: absolute;
	bottom:0;
	left:50%;
	transform: translateX(-50%);
	width: 100%;
	text-align: center;
}
#main-visual h2 span{
	background: #f4904d;
	color: #FFF;
	font-weight: bold;
	font-size:40px;
	padding: 5px;
}
@media only screen and (max-width:736px) {
	#main-visual h2{
		width:calc(100% - 20px);
	}
#main-visual h2 span{
		font-size:18px;
	line-height: 2;
	}
}
main.top-page{
	max-width: 1400px;
		margin: 0 auto;
	padding: 0;
}
.about{
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-direction: row-reverse;
	padding: 10vh 0;
}
@media only screen and (max-width:736px) {
.about{
	display: block;
	margin: 0 20px;
	padding: 5vh 0;
	}
}
.about .pic{
	width:48%;
}
.about .txt{
	width:48%;
}
.about .txt h2{
	margin: 0;
}
@media only screen and (max-width:736px) {
.about .pic,.about .txt{
	width:auto;
	}
	.about .pic{
		margin: 2.5vh 0 0 0;
	}
}
h2.title{
	color: #f4904d;
	font-weight: bold;
	font-size: 30px;
	 font-family: "Roboto", serif !important;
}
@media only screen and (max-width:736px) {
	h2.title{
		font-size:16px;
	}

}
h2.title.centre{
	text-align: center;
}
.about .txt h3{
		font-weight: bold;
	font-size: 30px;
	margin: 30px 0;
}
@media only screen and (max-width:736px) {
.about .txt h3{
		font-size:20px;
	margin: 10px 0;
	}
	p{
		font-size:14px;
	}
}
.about .txt p{
	line-height: 2;
}
.contents ul{
	display: flex;
	justify-content: space-between;
	margin: 5vh 0 10vh 0;
}
@media only screen and (max-width:736px) {
	.contents{
		padding-bottom: 50px;
	}
	.contents ul{
		flex-wrap:wrap;
		margin: 2.5vh 20px;
	}
}
.contents ul li{
	background: #f7eee8;
	border-radius:10px;
	padding: 25px;
	width:23%;
	box-sizing: border-box;
}
@media only screen and (max-width:736px) {
	.contents ul li{
		width:48%;
		margin-bottom: 4%;
		padding:25px 15px;
	}
}
.contents ul li .pic{
	width: 100px;
}
@media only screen and (max-width:736px) {
.contents ul li .pic{
		width:50px;
	}
}
.contents ul li .txt h3{
		font-weight: bold;
	font-size: 25px;
	margin: 25px 0 15px 0;
}
@media only screen and (max-width:736px) {
	.contents ul li .txt h3{
		font-size: 18px;
		margin: 10px 0 5px 0;
	}
}
.contents ul li .txt p{
	font-size: 15px;
}
@media only screen and (max-width:736px) {
.contents ul li .txt p{
		font-size: 14px;
	}
}
	.contact{
	background: rgba(167,211,230,.8);
		background-size:cover;
	box-sizing: border-box;
		text-align: center;
		position: fixed;
		width:100%;
		left:0;
		bottom:0;
		padding: 20px 0 0 0;
}
.contact .txt{
text-align: center;
}
@media only screen and (max-width:736px) {
	.contact .txt{
	width:auto;
}

}
.contact .txt h2{
	font-weight:bold;
	text-align: center;
	margin-bottom: 25px;
}
.contact .txt h2 span{
	position: relative;
		font-weight:bold;
}
.contact .txt h2 span:before{
	content:"";
	width:1px;
	height:30px;
	background: #333;
	display: block;
	position: absolute;
	left:-20px;
	top:0;
	transform: rotate(-20deg);
}
.contact .txt h2 span:after{
	content:"";
	width:1px;
	height:30px;
	background: #333;
	display: block;
	position: absolute;
	right:-20px;
		top:0;
	transform: rotate(20deg);
}
.contact .txt h2 em{
color:#be1e2d;
	font-weight:bold;
}
.contact .txt ul li:nth-child(1) a{
	background: #FFF;
	color: #1c75bc;
	font-weight:bold;
	display: block;
	border-radius:10px;
	padding: 20px 0;
	font-size: 20px;
	margin: 0 0 25px 0;
	box-shadow: 0px 10px 10px -5px rgba(0,0,0,0.5);
}
.contact .txt ul li:nth-child(2) a{
	background: #1c75bc;
	color: #FFF;
	font-weight:bold;
	display: block;
	border-radius:10px;
	padding: 20px 0;
	font-size: 20px;
	box-shadow: 0px 10px 10px -5px rgba(0,0,0,0.5);
}
	.contact .txt ul{
		display: flex;
		justify-content: space-between;
		padding: 0 20px;
		max-width: 600px;
		margin: 0 auto;
	}
	.contact .txt ul li{
		width:48%;
	}
@media only screen and (max-width:736px) {
	.contact .txt h2{
		font-size:15px;
	}
	
	.contact .txt ul li:nth-child(1) a,
	.contact .txt ul li:nth-child(2) a{
		font-size:18px;
		padding: 15px 0;
	}
}
footer{
	padding: 5vh 0 200px 0;
	text-align: center;
}
footer p{

	font-size:12px;
	color: #999;
}
@media only screen and (max-width:736px) {
	footer p{
		font-size:11px;
	}

}


/*--*/

html {
	height: 100%;
}
body {
	height: 100%;
	margin: 0;
}
.head-navi{
	position:fixed;
	top:10px;
	z-index:99;
	right:50px;
}
@media only screen and (max-width:736px) {
	.head-navi{
		display:none;
	}
}
.head-navi ul li{
	float:left;
	font-size:13px;
	margin-left:15px;
}
.head-navi ul li a{
	color:#333 !important;
}
.head-navi ul li a:before{
	content:">";
	display:inline-block;
	transform:scale(0.7,1);
	margin-right:5px;
}
.centre {
	text-align: center;
}
input[type=text].type-box, input[type=password].type-box, input[type=email].type-box {
	padding: 10px;
	box-sizing: border-box;
	background: #EEE;
	width: 100%;
	border: none;
	border-radius: 30px;
	font-size: 16px;
}
input[type=submit].type-ok {
	padding: 10px;
	box-sizing: border-box;
	background: #F05A28;
	width: 100%;
	border: none;
	border-radius: 30px;
	font-size: 16px;
	color: #FFF;
	font-weight: bold;
	letter-spacing: 3px;
}
.search-box{
	position:relative;
	margin:0 auto 10px auto;
	max-width:736px;
	padding:0 15px;
}

input[type=submit].scope {
	position:absolute;
	right:25px;
	top:7px;
	text-indent:-999em;
	background:url(../img/icon/icon-scope.png) no-repeat;
	background-size:20px;
	width: 20px;
	height:20px;
	border: none;
	z-index:7;
}
@media only screen and (max-width:736px) {
input[type=text].type-box, input[type=password].type-box {
	font-size: 14px;
	padding: 7px;
}
.search-box input[type=text]{
	font-size:13px;
	padding:7px 14px;

}
}
/*=============================================================*/
#wrapper,
#list {
	max-width: 736px;
	margin: 0 auto 0 auto;
	padding-bottom: 120px;
}
h1.logo {
	text-align: center;
	padding: 75px 0;
    color: #F05A28;
    font-size: 20px;
    font-weight: bold;
}
h1.logo img {
	max-width: 35%;
}
@media only screen and (max-width:736px) {
h1.logo {
	padding: 20px 0;
	margin: 0 auto;
    font-size: 16px;
}
h1.logo img {
	max-width: 100%;
}
#wrapper {
	margin: 10px 15px 0 15px;
	padding-bottom:60px
}
#list{
	margin: 0;
	padding-bottom:50px
}
p {
	font-size: 13px;
}
}
header {
	position: fixed;
	width: 100%;
	top: 0;
	border-bottom: 3px solid #EEE;
	background: rgba(255,255,255,.9);
	z-index: 8;
}
header.top-page{
	position: static;
	border: none;
}
#header {
	width: 100%;
	position: relative;
}
#header h1.maintitle {
	text-align: center;
	color: #333;
	font-size: 16px;
	padding: 10px 0;
	font-weight: 500;
	white-space: nowrap;
}
#header p.mark a{
	position: absolute;
	color: #F05537;
	font-weight: bold;
	left:25px;
	top: 20%;
	display: block;
	width: 25px;
}
#header p.my-p a {
	position: absolute;
	color: #F05537;
	font-weight: bold;
right:55px;
	top: 20%;
	display: inline-block;
	font-size: 16px;
}
@media only screen and (max-width:736px) {
#header h1.maintitle {
	font-size: 13px;
	width:35%;
	margin: 0 auto;
	padding: 0;
}
}
table.table {
	width: 100%;
	margin: 0 0 25px 0;
}
table.table th {
	padding: 20px;
}
table.table.under th {
	border-bottom: 1px solid rgba(236,125,99,.2);
	color: #F05A28;
}
table.table.under td iframe {
	width: 100%;
	height: 250px;
	margin: 10px 0 0 0;
}
table.table td {
	padding: 10px;
}
table.table span.must {
	float: right;
	border: 1px solid #F30;
	color: #F30;
	font-size: 13px;
	padding: 3px;
	border-radius: 5px;
	font-weight: normal;
}
table.table td label {
	margin: 0 10px 0 5px;
}
@media only screen and (max-width:736px) {
table.table th {
	padding: 10px 0 0 0;
	display: block;
	font-size: 13px;
}
table.table td {
	padding: 7px 0;
	display: block;
	font-size: 14px;
}
table.table span.must {
	font-size: 11px;
	position: relative;
	top: -3px;
	padding: 1px 3px;
}
}



ul#gnav {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	background: #F5835F;
	box-shadow: 0 0 2px #F05A28;
}
ul#gnav li {
	float: left;
	width:20%;

}
ul#gnav li a {
	display: block;
	padding: 10px 0;
		font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif !important;
}
ul#gnav li a p {
	text-align:center;
	color:#FFF;
	font-size:12px;
    display: block !important;
}
@media only screen and (max-width:736px) {

}
ul#gnav li a.active {
	background: rgba(240,90,40,1);
}
ul#gnav li a img {
	height: 30px;
	display: block;
	margin: 0 auto;
}
/*NAV HEADER*/

.overlay {
	content: "";
	display: block;
	width: 0;
	height: 0;
	background-color: rgba(0, 0, 0, 0.8);
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9;
	opacity: 0;
	transition: opacity .5s;
}
.overlay.open {
	width: 100%;
	height: 100%;
	opacity: 1;
}
.menu-trigger {
	display: inline-block;
	width: 20px;
	height: 20px;
	vertical-align: middle;
	cursor: pointer;
	position: fixed;
	top: 17px;
	right: 15px;
	z-index: 100;/*   transform: translateX(0);
  transition: transform .5s;
 */
}
/* .menu-trigger.active {
  transform: translateX(-250px);
}
 */.menu-trigger span {
	display: inline-block;
	box-sizing: border-box;
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background: #F05537;
	transition: all .5s;
	z-index: 99;
}
.menu-trigger.active span {
	background-color: #F05537;
}
.menu-trigger span:nth-of-type(1) {
	top: 0;
}
.menu-trigger.active span:nth-of-type(1) {
	transform: translateY(6px) rotate(-45deg);
}
.menu-trigger span:nth-of-type(2) {
	top: 6px;
}
.menu-trigger.active span:nth-of-type(2) {
	opacity: 0;
}
.menu-trigger span:nth-of-type(3) {
	top: 12px;
}
.menu-trigger.active span:nth-of-type(3) {
	transform: translateY(-6px) rotate(45deg);
}
main {
	padding: 60px 0 0 0;
}
nav#topnav {
	width: 280px;
	height: 100%;
	padding-top: 50px;
	background: #FFF;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 99;
	transform: translate(280px);
	transition: all .5s;
}
nav#topnav p{
	margin:0 20px 20px 20px;
    color: #F05537;
    font-weight: bold;
}
nav#topnav.open {
	transform: translateZ(0);
}
nav#topnav li {
	color: #333;
	font-size: 14px;
	padding:5px 20px;
}
/*nav#topnav li:nth-child(1),
nav#topnav li:nth-child(2){
	display:none;
}*/
@media only screen and (max-width:736px) {
nav#topnav li:nth-child(1),
nav#topnav li:nth-child(2){
	display:block;
}
}

/*customize section*/
article.text-inside p {
	overflow-wrap: break-word;
	white-space: pre-wrap;
}

p.e-pic img {
	display: block;
	margin-right: auto;
	margin-left: auto;
}

.login-section, .register-section {
	margin: 0 auto 20px auto !important;
}

div.alert {
	margin-top: 10px;
}
.alert-success {
	color: #1d643b;
	background-color: #d7f3e3;
	border-color: #c7eed8;
}
.alert-danger{
	color:#761b18;
	background-color:#f9d6d5;
	border-color:#f7c6c5
}
.alert-warning{
	color:#857b26;
	background-color:#fffbdb;
	border-color:#fffacc
}

.alert-info{
	color:#385d7a;
	background-color:#e2f0fb;
	border-color:#d6e9f9
}

.alert {
	position: relative;
	padding: .75rem 1.25rem;
	margin-bottom: 1rem;
	border: 1px solid transparent;
	border-radius: .25rem;
}

p.error-text {
	color: #F05A28;
}

a.link-content {
	color: #333333 !important;
	display: inline !important;
	overflow: unset !important;
	clear: none !important;
	padding: unset !important;
	position: unset  !important;
	text-decoration: underline;
}

.text-right {
	text-align: right;
}

.w50 {
	width: 50px;
}

.w70 {
    width: 70px;
}

.w100 {
	width: 100px;
}

.price {
	font-weight: bold;
	margin: 10px 0;
}

.price span{
	font-size: 16px
}

.price del{
	font-size: 14px
}

.product-divide {
	margin-top: 10px;
}

.product-quantity {
	margin: 10px 0;
}

@media only screen and (max-width:736px) {
	.price span{
		font-size: 14px
	}
	.price del{
		font-size: 12px
	}
}

.t-bold {
	font-weight: bold;
}

/*customize section*/


/* CSS Document */
img {
    max-width: 100%;
}

p.border-both {
    margin: 20px 0 0 0;
    padding: 5px 0 0 0;
    font-size: 12px;
}

p.forfogot {
    font-size: 13px;
    margin: 0 0 10px 0;
}

p.e-pic {
    padding: 15px;
}

ul.two-block {
    margin: 0 0 20px 0;
    overflow: hidden;
    clear: both;
}

ul.two-block li:nth-child(2) {
    margin-top: 15px;
}

ul.two-block.yoko li {
    width: 48%;
    float: left;
    font-size: 13px;
}

ul.two-block.yoko li:first-child {
    margin-right: 4%;
}

ul.two-block.yoko li:nth-child(2) {
    margin-top: 0;
}

ul.two-block li p {
    margin: 10px 0 0 0;
    font-size: 12px;
    text-align: center;
}

ul.two-block li p a {
    text-decoration: underline;
    color: #999;
}

p.and {
    text-align: center;
    margin: 15px 0;
}

p.and2 {
    margin: 15px 0;
}

p.letter {
    width: 100px;
    margin: 25px auto 0 auto;
}

p.letter img {
    max-width: 100%;
}

.facebook a {
    background: #4367B0;
    color: #FFF;
    display: block;
    text-align: center;
    padding: 10px;
    box-sizing: border-box;
    border-radius: 30px;
}

.facebook a:before {
    content: "";
    background: url(../img/icon/facebook.png) no-repeat;
    background-size: 17px;
    display: inline-block;
    width: 17px;
    height: 17px;
    margin: 0;
}

.line a {
    background: #20B24A;
    color: #FFF;
    display: block;
    text-align: center;
    padding: 10px;
    box-sizing: border-box;
    border-radius: 30px;
}

.line a:before {
    content: "";
    background: url(../img/icon/line.png) no-repeat;
    background-size: 17px;
    display: inline-block;
    width: 17px;
    height: 17px;
    margin: 0 5px 0 0;
}

#firsttime {
    background: #FDF2EF;
    padding: 20px;
    text-align: center;
    max-width: 736px;
    margin: 0 auto;
}

@media only screen and (max-width: 736px) {
    .facebook a, .line a {
        font-size: 13px;
    }

    #firsttime {
        margin-top: -50px;
    }
}

#firsttime p {
    margin: 0 0 10px 0;
}

.next, #firsttime p a {
    display: block;
    border: 2px solid #F05536;
    color: #F05536;
    border-radius: 30px;
    font-weight: bold;
    padding: 10px;
    box-sizing: border-box;
    font-size: 15px;
    text-align: center;
    background: #FFF;
    width: 100%;
    transition: all 0.3s ease-in-out;
}

.back {
    display: block;
    color: #FFF;
    border-radius: 30px;
    font-weight: bold;
    padding: 5px;
    box-sizing: border-box;
    font-size: 15px;
    text-align: center;
    background: #999;
    width: 100%;
    transition: all 0.3s ease-in-out;
    margin: 15px 0 0 0;
    border: none;
    letter-spacing: 5px;
}

.submit {
    transition: all 0.3s ease-in-out;
}

.opa2 {
    opacity: 0.2;
}

h2.title {
    margin: 0 0 20px 0;
    font-size: 15px;
    font-weight: normal;
}

h3.subtitle span {
    color: #F05A28;
    border-bottom: 2px solid #F05A28;
    text-align: center;
    padding: 5px 0;
    font-size: 12px;
    font-weight: bold;
}

dl.question {
    margin: 0 0 10px 0;
}

dl.question + input {
    margin-bottom: 20px;
}

dl.question + input + label {
    font-size: 13px;
}

dl.question dt {
    margin: 15px 0;
    font-size: 15px;
}

dl.question dd {
    font-size: 13px;
    margin: 0 0 7px 0;
    text-indent: -1.6em;
    padding-left: 1.6em;
}

dl.question dd label {
    margin-left: 5px;
}

select {
    background: #FFF;
    padding: 5px;
    margin-right: 5px;
}

.second-question select:nth-child(2) {
    margin-left: 10px;
}

ul.blog-list li {
    border-bottom: 1px solid #EEE;
    padding: 10px 0 0 0;
}

ul.blog-list li:first-child {
    padding: 0;
}

ul.blog-list li .image {
    float: left;
    width: 25%;
}

ul.blog-list li a {
    display: block;
    overflow: hidden;
    clear: both;
	padding: 10px 0 ;
}

ul.blog-list li .text {
    float: left;
    width: 70%;
    margin-left: 5%;
}

ul.blog-list li .text h2 {
    font-size: 14px;
    line-height: 1.4;
}

time {
    font-size: 12px;
    color: #999;
    overflow: hidden;
}

/*=============================================================*/
.title-wrap {
    overflow: hidden;
    clear: both;
}

.title-wrap h2 {
    font-size: 15px;
    float: left;
}

.title-wrap p {
    float: right;
    font-size: 12px;
}

.search-result-list {
    margin-top: 25px !important;
}

.title-wrap p:after {
    content: ">";
    margin: 0 0 0 5px;
    color: #F05537;
    font-weight: bold;
    font-family: Arial, Helvetica, sans-serif;
    display: inline-block;
    transform: scale(0.8, 1)
}

.company-top {
    padding-bottom: 50px;
}

.company-top ul {
    margin-bottom: 25px;
    overflow: hidden;
    clear: both;
}

.company-top ul li {
    float: left;
    width: 32%;
    margin-right: 2%;
}

.company-top ul li:nth-child(3n) {
    margin-right: 0;
}

@media only screen and (max-width: 736px) {
    .company-top ul {
        overflow: inherit;
        clear: none;
        overflow-x: auto;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
        margin: 10px -15px 20px 0;
    }

    .company-top ul li:nth-child(3n) {
        margin-right: 15px;
    }

    .company-top ul li {
        /* 横スクロール用 */
        display: inline-block;
        width: 40%;
        /* 見た目調整 */
        margin: 0 15px 0 0;
        vertical-align: top;
        float: none;
    }
}

.company-top ul li img {
    border-radius: 10px;
}

.company-top ul li p {
    height: 35px;
    white-space: normal !important;
    font-size: 14px;
}

@media only screen and (max-width: 736px) {
    .company-top ul li p {
        font-size: 13px;
    }
}

/*================================*/
.company-all ul {
    overflow: hidden;
    clear: both;
    margin: 10px 0 0 0;
    display: flex;
    flex-wrap: wrap;
}

.company-all ul li {
    float: left;
    width: 48%;
    margin: 0 4% 4% 0;
}

.company-all ul li:nth-child(2n) {
    margin-right: 0;
}

.company-all ul li img {
    border-radius: 10px;
}

.search-wrap {
    margin: 5px 0 0 0;
}

.search-wrap h3 {
    float: left;
    font-size: 13px;
    padding: 7px 0 0 0;
    box-sizing: border-box;
    width: 25%;
}

.search-wrap input[type=text] {
    background: #EEE;
    padding: 7px;
    border: none;
    border-radius: 30px;
    font-size: 14px;
    box-sizing: border-box;
    width: 100%;
    margin-bottom: 5px;
}

.recruitinfo-wrap {
    margin: 0 auto 20px 7px;
    overflow: hidden;
    clear: both;
}

.recruitinfo-wrap p {
    float: left;
    margin: 4px 10px 0 0;
}

.recruitinfo-wrap input[type=radio] {
    position: relative;
    top: 2px;
}

.recruitinfo-wrap input[type=radio] + label {
    font-size: 13px;
    margin: 0 10px 0 5px;
}

h3.companysubtitle {
    font-size: 14px;
    color: #F05A28;
    margin: 0 0 20px 0;
}

.left-right {
    clear: both;
    overflow: hidden;
    margin: 0;
}

.mainpic {
    margin: 0 0 10px 0;
}

.catchcopy {
    margin: 0 0 20px 0;
}

.catchcopy h4 {
    font-size: 20px;
}

@media only screen and (max-width: 736px) {
    .catchcopy h4 {
        font-size: 16px;
    }
}

.left-right .left {
    float: left;
    width: 48%;
    margin: 0 4% 4% 0;
}

.left-right .right {
    float: right;
    width: 48%;
}

#under-wrapper {
    background: #FDF2EF;
    margin: -75px auto 0 auto;
    padding: 15px 15px 85px 15px;
    max-width: 736px;
}

p.btn-recruit a {
    display: block;
    border: 2px solid #F05536;
    color: #F05536;
    border-radius: 30px;
    font-weight: bold;
    padding: 10px;
    box-sizing: border-box;
    font-size: 15px;
    text-align: center;
    background: #FFF;
    width: 100%;
    transition: all 0.3s ease-in-out;
}

#two-nav-bottom {
    background: #FFF;
    position: fixed;
    bottom: 70px;
    width: 100%;
    border-top: 1px solid #F05A28;
    z-index: 8;
}

@media only screen and (max-width: 736px) {
    #two-nav-bottom {
        bottom: 49px;
    }
}

#two-nav-bottom ul {
    overflow: hidden;
    clear: both;
    width: 100%;
}

#two-nav-bottom ul li {
    float: left;
    width: 50%;
    text-align: center;
    border-right: 1px solid #FFF;
}

#two-nav-bottom ul li a {
    display: block;
    font-size: 13px;
    padding: 5px;
    color: #F05A28;
    border-right: 1px solid #F05A28
}

#two-nav-bottom ul li:last-child a {
    border: none;
    text-decoration: none;
}

#two-nav-bottom ul li.bookmark2 a.nagative {
    background: #F05A28 !important;
    color: #FFF;
}

#two-nav-bottom ul li.bookmark2 a.nagative:before {
    content: "";
    background: url(../img/icon/icon-fav-white.png) no-repeat;
    background-size: 15px;
}

#two-nav-bottom ul li.bookmark2 a:before {
    content: "";
    display: inline-block;
    background: url(../img/icon/icon-fav.png) no-repeat;
    background-size: 15px;
    width: 15px;
    height: 14px;
    padding: 0 0 0 10px;
}

#two-nav-bottom ul li.comment a:before {
    content: "";
    display: inline-block;
    background: url(../img/icon/icon-comment.png) no-repeat;
    background-size: 17px;
    width: 17px;
    height: 17px;
    padding: 0 0 0 10px;
}

.mt-20 {
    margin-top: -20px !important;
    margin-bottom: 20px;
}

.mt20 {
    margin-top: 20px !important;
}

.mt15 {
    margin-top: 15px !important;
}

.mt5 {
    margin-top: 5px !important;
}

/*----*/
.wrap {
    max-width: 736px;
    margin: 0 auto;
}

#two-nav {
    background: #FCDED4;
    position: sticky;
    position: -webkit-sticy;
    top: 45px;
    width: 100%;
    z-index: 8;
}

#two-nav ul {
    overflow: hidden;
    clear: both;
    width: 100%;
}

#two-nav ul li {
    float: left;
    width: 50%;
    text-align: center;
    border-right: 1px solid #FFF;
}

#two-nav ul li a {
    display: block;
    font-size: 13px;
    padding: 5px;
}

#two-nav ul li.ranking a:before {
    content: "";
    display: inline-block;
    background: url(../img/icon/icon-crown.png) no-repeat;
    background-size: 17px;
    width: 17px;
    height: 13px;
    padding: 0 0 0 10px;
}

#two-nav ul li.bookmark a:before {
    content: "";
    display: inline-block;
    background: url(../img/icon/icon-fav.png) no-repeat;
    background-size: 15px;
    width: 15px;
    height: 14px;
    padding: 0 0 0 10px;
}

/*===========================*/
.search-navi {
    max-width: 736px;
    margin: 0 auto 0 auto;
    position: sticky;
    position: -webkit-sticky;
    top: 75px;
    z-index: 9;
    background: #FFF;
}

.search-navi:before, .search-navi:after {
    content: "";
    display: block;
    overflow: hidden;
    clear: both;
}

.search-navi ul {
    display: flex;
    border-bottom: 3px solid #27A9E1;
}

.search-navi ul li span {
    display: table-cell;
    text-align: center;
    background: #27A9E1;
    vertical-align: middle;
    min-width: 100px;
    border-radius: 10px 10px 0 0 / 10px 10px 0 0;
    box-sizing: border-box;
    opacity: 0.5;
    border-right: 2px solid #FFF;
    position: relative;
}

@media only screen and (max-width: 736px) {
    /* スマホではスライダーで表示 */
    .search-navi ul {
        overflow-x: scroll;
        -webkit-overflow-scrolling: touch;
        overflow-scrolling: touch;
    }
}

.search-navi ul li {
    margin: 5px 0 0 0;
}

.search-navi ul li span {
    flex: 0 0 70%;
    background: #27A9E1;
    border-radius: 10px 10px 0 0 / 10px 10px 0 0;
    box-sizing: border-box;
    padding: 7px 0 5px 0;
    color: #fff;
    display: block;
    text-decoration: none;
    font-size: 12px;
}

.search-navi ul li .select {
    border-bottom: none;
    margin: 0 !important;
    border-right: 2px solid #FFF;
    opacity: 1;
    background-color: #27A9E1;
}

article.list-item {
    border-bottom: 1px solid #EEE;
    overflow: hidden;
    clear: both;
}

#news-article {
    margin-bottom: 90px;
}

.contents-content {
    padding: 10px 15px;
    max-width: 736px;
    margin: 0 auto;
}

.contents-content h2 {
    font-size: 15px;
}

.contents-content div a span {
    display: table-cell;
    padding-left: 5px;
    padding-right: 5px;
}

.contents-content .text {
    margin: 25px 0 0 0;
}

p.more-read {
    margin: 20px 0;
}

p.more-read a {
    padding: 10px;
    box-sizing: border-box;
    color: #F05A28;
    border: 2px solid #F05A28;
    width: 100%;
    border-radius: 30px;
    font-size: 15px;
    display: block;
    font-weight: bold;
    letter-spacing: 1px;
    text-align: center;
}

ul.news-tag {
    clear: both;
    overflow: hidden;
}

ul.news-tag li {
    float: left;
    margin: 0 10px 0 0;
    font-size: 11px;
    color: #999;
}

.news-bookmark-comment-wrap {
    overflow: hidden;
    clear: both;
}

ul.news-bookmark-comment {
    float: right;
    line-height: 12px;
}

ul.news-bookmark-comment li {
    float: left;
    margin: 0 10px 0 0;
}

ul.news-bookmark-comment li:last-child {
    margin-right: 0;
}

ul.news-bookmark-comment li.bookmark:before {
    content: "";
    display: inline-block;
    background: url(../img/icon/icon-fav-on.png) no-repeat;
    background-size: 12px;
    width: 12px;
    height: 11px;
    padding: 0 0 0 5px;
}

ul.news-bookmark-comment li.comment:before {
    content: "";
    display: inline-block;
    background: url(../img/icon/icon-comment-on.png) no-repeat;
    background-size: 12px;
    width: 12px;
    height: 11px;
    padding: 0 0 0 5px;
}

ul.news-bookmark-comment li span {
    display: inline-block;
    font-size: 11px;
}

#news-comment {
    max-width: 736px;
    margin: 0 auto;
    padding: 15px 15px 100px 15px;
    background: #F7F7F7;
}

.comment-wrap {
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px dashed #EEE;
}

.comment-wrap:last-child {
    margin: 0;
    padding: 0;
    border: none;
}

ul.usernameanddate {
    overflow: hidden;
    clear: both;
    margin: 0 0 5px 0;
}

ul.usernameanddate li {
    float: left;
    margin-right: 10px;
}

ul.usernameanddate li.username {
    font-size: 13px
}

ul.usernameanddate li.date {
    font-size: 11px;
    color: #999;
    padding: 3px 0 0 0;
}

.number {
    float: left;
    width: 10%;
    color: #FFF;
    padding: 5px;
    box-sizing: border-box;
    margin-left: 4%;
    margin-top: 10px;
    position: relative;
    background: #333;
}

.number p {
    font-size: 10px;
    text-align: center;
    background: url(../img/icon/icon-crown-white.png) no-repeat center top;
    background-size: 18px;
    padding: 18px 0 0 0;
}

.number p span {
    font-size: 130%;
    font-family: Arial, Helvetica, sans-serif !important;
}

.number:before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 10px 0 0;
    border-color: #333 transparent transparent transparent;
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    top: 44px;
}

.number:after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 10px 10px 0;
    border-color: transparent #333 transparent transparent;
    position: absolute;
    bottom: 0;
    right: 0;
    display: block;
    top: 44px;
}

.number.no1 {
    background: #D6DF23;
}

.number.no1:before {
    content: "";
    border-color: #D6DF23 transparent transparent transparent !important;
}

.number.no1:after {
    content: "";
    border-color: transparent #D6DF23 transparent transparent;
}

.number.no2 {
    background: #999;
}

.number.no2:before {
    content: "";
    border-color: #999 transparent transparent transparent !important;
}

.number.no2:after {
    content: "";
    border-color: transparent #999 transparent transparent;
}

.number.no3 {
    background: #804040;
}

.number.no3:before {
    content: "";
    border-color: #804040 transparent transparent transparent !important;
}

.number.no3:after {
    content: "";
    border-color: transparent #804040 transparent transparent;
}

.number + .contents-content {
    float: left;
    width: 86%;
}

/*=========================================================*/

h2.title2 {
    background: #FCDED4;
    padding: 7px 15px;
    font-size: 14px;
}

h2.title2.stick {
    position: sticky;
    position: -webkit-sticky;
    top: 45px;
    z-index: 8;
}

h3.title2 {
    background: #F7F7F7;
    padding: 5px 15px;
    font-size: 13px;
    font-weight: 500;
    clear: both;
}

#column-article {
    padding-bottom: 70px;
    margin-top: 0px;
}

#qa-article {
    margin-top: 15px;
    padding-bottom: 75px;
}

#column-article article a,
#qa-article article a {
    display: block;
    overflow: hidden;
    clear: both;
    padding: 15px;
    position: relative;
}

#column-article article a:after {
    content: ">";
    position: absolute;
    top: 20px;
    right: 15px;
    font-family: Arial, Helvetica, sans-serif !important;
    transform: scale(0.8, 1);
    color: #F05A28;
}

ul.column-list {
    overflow: hidden;
    clear: both;
}

ul.column-list li {
    font-size: 14px;
    float: left;
}

ul.column-list li.category.elearning {
    background: #27A9E1;
}

ul.column-list li.category.column {
    background: #FC0;
}

ul.column-list li.category {
    color: #FFF;
    border-radius: 10px;
    margin-right: 10px;
    padding: 1px 10px;
    font-size: 12px;
    text-align: center;
    width: 22%;
}

ul.column-list li.slugtitle {
    width: 70%;
}


ul.column-list li .column {
    display: flex;
    align-items: center;
    justify-self: left;
    gap: 5px;
}

ul.column-list li .column img {
    width: 100px;
}

.prot {
    overflow: hidden;
    clear: both;
    margin: 0;
    padding: 10px 15px;
}

.bk-gray {
    background: #F7F7F7;
}

.prot ul li {
    font-size: 12px;
}

.prot ul li:before {
    content: "■";
    font-size: 10px;
    margin: 0 5px 0 0;
    color: #666;
}

ul.qa-list li {
    font-size: 13px;
}

ul.qa-list li .case-qa {
    margin: 0 10px 0 0 !important;
}

ul.qa-list li.username-slugtitle {
    float: left;
    padding: 0;
}

ul.qa-list li.username-slugtitle ul {
    float: none;
}

ul.qa-list li.username-slugtitle ul li {
    padding: 0;
    margin: 0;
}

ul.qa-list li.username-slugtitle ul li.username {
    color: #666;
    font-size: 12px;
}

ul.qa-list li.username-slugtitle ul li.slugtitle {
    font-size: 14px;
}

ul.qa-list li.comment {
    float: right;
    padding: 15px 0 0 15px;
    color: #999;
}

ul.qa-list .slugtitle {
    visibility: hidden;
}

ul.qa-list li.comment:before {
    content: "";
    display: inline-block;
    background: url(../img/icon/icon-comment-on.png) no-repeat;
    background-size: 12px;
    width: 12px;
    height: 11px;
    padding: 0 0 0 5px;
}

/*==============================================================*/
.line-bc {
    max-width: 736px;
    padding: 0 0 140px 0;
    margin: 0 auto 50px auto;
    text-align: right;
    font-size: 14px;
}

/*以下、②左側のコメント*/
.balloon {
    width: 100%;
    margin: 10px 0;
    overflow: hidden;
}

.waki {
    margin-right: 70px;
}

.waki h2 {
    text-align: right;
    font-size: 12px;
    line-height: 12px;
    margin-top: 20px;
}

.waki p {
    margin-bottom: 5px;
}

.faceicon {
    float: right;
    width: 40px;
    margin: 0 15px 0 0;
}

.balloon .faceicon {
    float: left;
    width: 40px;
    margin: 0 10px;
}

.faceicon img {
    width: 100%;
    height: auto;
    border-radius: 50%;
}

.balloon .chatting {
    width: 100%;
    text-align: left;
}

.otheruser-date {
    text-align: left;
    margin-left: 15px;
    display: flex;
}

.otheruser-date h2 {
    font-size: 12px;
}

.user-date p, .otheruser-date p {
    font-size: 10px;
    padding: 3px 0 0 10px;
    color: #999;
}

.user-date {
    text-align: right;
    margin: 0 15px -20px 0;
}

.says {
    display: inline-block;
    position: relative;
    margin: 0;
    left: 20px;
    padding: 10px;
    max-width: 70%;
    border-radius: 12px;
    background: #F7F7F7;
}

.says:after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 3px;
    left: -20px;
    border: 8px solid transparent;
    border-right: 18px solid #F7F7F7;
    -webkit-transform: rotate(35deg);
    transform: rotate(35deg);
}

.says p {
    margin: 0;
    padding: 0;
    white-space: pre-wrap;
}

/*以下、③右側の緑コメント*/
.mycomment {
    margin: 20px 0;
}

.mycomment .me-says {
    display: inline-block;
    position: relative;
    left: -10px;
    margin: 0 0 0 19px;
    padding: 8px;
    max-width: 70%;
    border-radius: 12px;
    background: #FDF2EF;
    font-size: 15px;
    text-align: left;
}

.me-says p {
    white-space: pre-wrap;
}

.mycomment .me-says:after {
    content: "";
    position: absolute;
    top: 3px;
    right: -15px;
    border: 8px solid transparent;
    border-left: 18px solid #FDF2EF;
    -webkit-transform: rotate(-35deg);
    transform: rotate(-35deg);
}

.chat-comment label {
    background: url(../img/icon/clip.png) no-repeat;
    background-size: 15px;
    cursor: pointer;
    padding: 20px;
    box-sizing: border-box;
    margin: 0;
    display: inline-block;
}

.chat-comment label input {
    display: none;
}

.chat-comment {
    max-width: 736px;
    width: 100%;
    margin: 0 auto;
    padding: 0 0 70px 0;
    box-sizing: border-box;
    position: fixed;
    bottom: 0;
    background: #FFF;
    transform: translateX(-50%);
    left: 50%;
}

.chat-comment ul li:nth-child(1) {
    float: left;
    width: 7%;
}

.chat-comment ul li:nth-child(2) {
    float: left;
    width: 78%;
    margin-left: 1%;
}

.chat-comment ul li:nth-child(3) {
    float: left;
    width: 12%;
    margin-left: 2%;
}

.chat-comment textarea {
    width: 100%;
    padding: 5px;
    box-sizing: border-box;
    border-radius: 7px;
    font-size: 15px;
    max-height: 100px;
    height: 35px;
    box-shadow: 0 0 20px #CCC;
    border: none;
    border: 1px solid #CCC;
}

.chat-comment input[type=submit] {
    background: #F05A28;
    border: none;
    color: #FFF;
    width: 100%;
    letter-spacing: 2px;
    border-radius: 7px;
    height: 38px;
}

.chat-comment.is-show {
    position: static !important;
    transform: none !important;
}

@media only screen and (max-width: 767px) {
    .line-bc {
        margin: 0 auto 25px auto;
        padding: 0 0 130px 0;
    }

    .chat-comment {
        bottom: 50px;
        margin: 0;
        padding: 15px 20px 0 20px;
        background: #FFF;
    }

    .mycomment .me-says {
        font-size: 13px;
    }

    .chat-comment.is-show {
        position: static !important;
        margin-bottom: 25px;
    }

    .chat-comment textarea {
        font-size: 13px;
        box-shadow: 0 0 10px #EEE;
    }

    .chat-comment input[type=submit] {
        font-size: 13px;
        letter-spacing: 1px;
        width: auto !important;
        padding: 7px;
        margin: 0;
    }

    .comment ul li:nth-child(1) {
        float: left;
        width: 8%;
    }

    .comment ul li:nth-child(2) {
        float: left;
        width: 78%;
        margin-left: 1%;
    }

    .comment ul li:nth-child(3) {
        float: left;
        width: 12%;
        margin-left: 1%;
    }
}

p.plus a {
    position: fixed;
    bottom: 120px;
    right: 15px;
    background: #27A9E1;
    color: #FFF;
    text-decoration: none;
    border-radius: 50%;
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
}

@media only screen and (max-width: 767px) {
    p.plus a {
        bottom: 80px;
    }
}

/*======================================================*/
#consultant-top {
    position: fixed;
    top: 0;
    width: 100%;
}

#consultant-top ul li {
    height: 42vh;
    width: 100%;
    text-align: center;
    position: relative;
}

#consultant-top ul li a {
    display: block;
    width: 100%;
    height: 100%;
}

#consultant-top ul li a img {
    width: 30%;
}

#consultant-top ul li.chat a {
    background: rgba(39, 169, 225, .2);
}

#consultant-top ul li.tel a {
    background: #FDF2EF;
    text-decoration: none;
    color: #333;
}

#consultant-top ul li:nth-child(1) div {
    position: absolute;
    transform: translate(-50%, -65%);
    left: 50%;
    top: 65%;
}

#consultant-top ul li:nth-child(2) div {
    position: absolute;
    transform: translate(-50%, -35%);
    left: 50%;
    top: 35%;
}

#consultant-top ul li div h2 {
    font-size: 18px;
}

#consultant-top ul li div p {
    color: #C00;
}

#consultant-top ul li div p small {
    color: #333;
    font-size: 12px;
    display: block;
    line-height: 1.5;
    margin: 10px 0 0 0;
}

dl.price .total {
    font-size: 120%;
}

table.table-link th {
    width: 50% !important
}

table.table-link td {
    width: 50% !important
}

.link-list {
    margin: 10px 0 0 0;
}

.link-list li a {
    display: block;
    padding: 12px 20px 12px 0;
    border-top: 1px solid #EEE;
    font-size: 13px;
    position: relative;
}

.link-list li a:after {
    content: ">";
    position: absolute;
    top: 50%;
    right: 0;
    transform: scale(0.8, 1) translateY(-50%);
    font-family: Arial, Helvetica, sans-serif !important;
    color: #F05A28;
}

#link-content {
    padding-bottom: 70px;
    margin-top: -15px;
}

h2.link-title {
    font-size: 18px !important;
    font-weight: bold !important;
}
table.link-detail tr{
    width: 100%;
}

table.link-detail th{
    font-weight: bold;
    padding:5px 0;
    width: 100px;
}
table.link-detail td{
    padding:5px 0;
}

@media only screen and (max-width: 767px) {
    h2.link-title {
        font-size: 16px !important;
    }
    table.link-detail th{
        width: 80px;
        font-size: 13px;
    }
    table.link-detail td{
        font-size: 13px;
    }
}


.movie {
    margin: 15px;
}

.movie iframe {
    width: 100%;
    height: 190px
}

.text-inside {
    padding: 15px;
}

span.empty-data {
    font-size: 12px;
    margin: 10px 15px;
    display: block;
}

.attention {
    font-size: 13px;
    margin: 15px;
}

.attention ul li:before {
    content: "・";
}

@media only screen and (max-width: 767px) {
    .attention {
        font-size: 12px;
    }
}

ul.qa-category {
    overflow: hidden;
    clear: both;
}

ul.qa-category li {
    float: left;
    width: 25%;
    margin-bottom: 10px;
}

@media only screen and (max-width: 767px) {
    ul.qa-category li {
        width: 50%;
    }
}

h2.title-links {
    font-size: 14px;
    text-align: center;
    margin: 10px 0;
}

@media only screen and (max-width: 767px) {
    h2.title-links {
        font-size: 13px;
        text-align: center;
        margin: 0 0 20px 0;
    }
}

#useful-article {
    display: flex;
    flex-wrap: wrap;
}

@media only screen and (max-width: 767px) {
    #useful-article {
        margin: 0 15px 50px 15px;
    }
}

#useful-article article {
    float: left;
    width: 48%;
    margin-right: 4%;
}

@media only screen and (max-width: 767px) {
    #useful-article article {
        float: none;
        width: 100%;
        text-align: center;
        margin-right: 0;
        margin-bottom: 10px;
        border-bottom: 1px solid #EEE;
    }

    #useful-article article:last-child {
        border-bottom: none;
    }
}

#useful-article article h2 {
    text-align: center;
    margin: 10px 0 0 0;
}

#useful-article article:nth-child(2n) {
    margin-right: 0;
}

p.download {
    margin: 10px 0;
}

p.download a {
    padding: 10px;
    box-sizing: border-box;
    color: #F05A28;
    border: 2px solid #F05A28;
    width: 100%;
    border-radius: 30px;
    font-size: 15px;
    display: block;
    font-weight: bold;
    letter-spacing: 1px;
    text-align: center;
}

@media only screen and (max-width: 767px) {
    #useful-article article h2 {
        font-size: 15px;
    }

    p.download {
        margin: 10px 0 20px 0;
    }

    p.download a {
        width: 50%;
        padding: 7px;
    }
}

.shopping {
    max-width: 736px;
    margin: 0 auto 100px auto;
    box-sizing: border-box;
    padding: 0 15px 100px 15px;
}
ul.shopping-list{
    box-sizing: border-box;
}
ul.shopping-list li {
    overflow: hidden;
    border-bottom: 1px solid #DDD;
    padding:15px 0;
}
ul.shopping-list li:first-child{
    padding-top:0;
}
ul.shopping-list li:last-child{
    border-bottom:none;
}
ul.shopping-list li .pic{
    float: left;
    width:40%;
}

ul.shopping-list li .text{
    float: right;
    width:55%;
}
ul.shopping-list li .commnet{
    margin: 5px 0;
}
ul.shopping-list li  .commnet p{
    word-break: break-word;
    white-space:pre-wrap;
    font-size: 12px;
}
ul.shopping-list li  .price{
    font-size: 11px;
}
ul.shopping-list li  .price em{
    font-size: 150%;
    margin: 0 5px 0 0;
}
ul.shopping-list li .ammount{
    font-size: 13px;
    border-top:1px solid #EEE;
    padding: 10px 0 0 0;
}

ul.shopping-list li  .ammount input{
    width:60px;
    border: 1px solid #CCC;
    text-align: right;
}
input.get{
    background:rgba(240,90,40,1);
    color: #FFF;
    border-radius: 7px;
    border: none;
    padding: 7px 0;
    display: block;
    text-align: center;
    letter-spacing: 1px;
    transition: all 0.3s ease-in;
    font-size: 1rem;
    box-sizing: border-box;
    margin: 15px auto 0 auto;
    width: 100%;
    font-weight:bold;
}
input.change{
    border:2px solid rgba(240,90,40,1);
    color: rgba(240,90,40,1);;
    background: #FFF;
    border-radius: 7px;
    padding: 7px 0;
    display: block;
    text-align: center;
    letter-spacing: 1px;
    transition: all 0.3s ease-in;
    font-size: 1rem;
    box-sizing: border-box;
    margin: 15px auto 0 auto;
    width: 100%;
    font-weight:bold;
}
input.cart{
    background:rgba(240,90,40,1);
    color: #FFF;
    border-radius: 7px;
    border: none;
    padding: 12px 0;
    display: block;
    text-align: center;
    letter-spacing: 1px;
    transition: all 0.3s ease-in;
    font-size: 1rem;
    box-sizing: border-box;
    margin: 15px auto 0 auto;
    width: 100%;
    font-weight:bold;
}
.shopping h2.title-shopping{
    margin: 0 0 15px 0;
    border-bottom:2px solid #EEE;
    padding-bottom: 5px;
    font-weight:bold;
}
table.table{
    width:100%;
}
table.table th,
table.table td{
    padding: 5px 0;
    display: block;
    box-sizing: border-box;

}
table.table td{
    font-size: 15px !important;
    border-bottom: 1px dashed #CCC;
    padding-bottom: 10px;
    margin-bottom: 10px;
}
table.table td input[type=text]{
    width:100%;
    background: #FFF;
    border:1px solid #CCC;
    padding: 5px;
    box-sizing: border-box;
}
table.table td ul{
    overflow: hidden;
}
table.table td ul li{
    float: left;
    max-width: 48%;
}
table.table td ul li:first-child{
    margin-right: 4%;
}
table.table td input[type=text].half{
    width:48%;
}
.memorize{
    font-size: 12px;
}
.shopping-box{
    background: #F7F7F7;
    padding: 10px;
    margin-bottom: 25px;
}
p.back-btn{
    margin: 25px 0 0 0;
}
p.back-btn a:before{
    content:"<";
    margin: 0 5px 0 0;
}
@media only screen and (max-width:736px) {
    input[type="submit"], input[type="reset"], input[type="button"], button,input[type="number"],select {
        cursor: pointer;
        -webkit-appearance: button;
        *overflow: visible;
    }
}

.lock {
	overflow: hidden;
}
#modal-target {
	display: none;
	position: relative;
	width: 100%;
	height: 100%;
}
.modal-content {
	display: none;
}
.modal-overlay {
	z-index: 9998;
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 120%;
	background-color: rgba(255, 255, 255);
}
.modal-wrap {
	z-index: 9999;
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow-x: hidden;
	-webkit-overflow-scrolling: touch
}
.modal-open {
	color: #00f;
	text-decoration: underline;
}
.modal-open:hover {
	cursor: pointer;
	color: #f00;
}
.modal-close:hover {
	cursor: pointer;
	color: #f00;
}
.textarea {
	max-width: 736px;
	margin: 5vh auto;
	position: relative;
	padding: 30px 15px;
	box-sizing: border-box;
	font-size: 13px;
}
.textarea textarea {
	width: 100%;
	height: 300px;
	background: #EEE;
	font-size: 13px;
	padding: 7px;
	border: none;
	border-radius: 15px;
}
.textarea img {
	max-width: 100%;
}
.textarea label{
	margin-right:10px;
}
@media only screen and (max-width:736px) {
.textarea {
	width: 96vw;
	margin:20px auto 0 auto;
	padding: 25px;
}
}
.titlebox {
	width: 200px;
	height: 200px;
	padding: 25px;
	box-sizing: border-box;
	background: rgba(0,159,231,.8);
}
.textarea h1 {
	font-size: 20px;
	color: #999;
	font-weight: bold;
}
.textarea h1 span {
	border-bottom: 3px solid #FAAE17;
}
.textarea h2 {
	font-size: 15px;
	margin: 10px 0;
	font-weight:bold;
}
@media only screen and (max-width:736px) {
}

.textarea h3 {
	margin:10px 0;
	font-size: 14px;
}
.textarea h4.voicever {
	font-weight: bold;
	font-size: 18px;
	margin: 0 0 10px 0;
}
figure.pic1 {
	position: relative;
}
figure.pic1 img {
	margin: 0 !important;
}
figure.pic1 figcaption {
	position: absolute;
	top: 0;
	left: -100px;
	background: #da1c5c;
	color: #FFF;
	width: 200px;
	border-radius: 10px;
	font-size: 13px;
	padding: 10px;
	box-sizing: border-box;
}
figure.pic2 {
	text-align: center;
	font-size: 14px;
}
.textarea p.sen-text {
	padding-left: 50px;
	padding-top: 5px;
}
@media only screen and (max-width:736px) {
.textarea h3 span {
	font-size: 20px;
	padding: 10px;
}
figure.pic1 figcaption {
	position: static;
	width: 100%;
}
.textarea h4 {
	font-size: 18px;
}
}
.textarea p {
	font-size: 14px;
	margin-bottom: 20px;
	line-height: 170%;
}
@media only screen and (max-width:736px) {
.textarea p {
	font-size: 13px;
}
}
.textarea p strong {
	color: #DA1C5C;
	font-weight: bold;
}
.textarea aside {
	font-size: 11px;
	color: #999;
}
.textarea h5 {
	font-weight: bold;
	font-size: 18px;
	margin-bottom: 10px;
}
.textarea ul.normal-t li h6 {
	font-weight: bold;
	font-size: 16px;
	position: relative;
	margin-left: 50px;
}
.textarea ul.normal-t li h6:before {
	content: "";
	position: absolute;
	top: 50%;
	left: -50px;
	width: 40px;
	background: #333;
	height: 1px;
	display: block;
}
.textarea ul.normal-t li {
	margin-bottom: 20px;
	overflow: hidden;
	clear: both;
}
.textarea ul.normal-t li dt {
	float: left;
	clear: left;
	width: 8%;
	font-family: Arial, Helvetica, sans-serif !important;
	padding: 0 5px;
	margin-right: 10px;
	padding-right: 10px;
	color: #feb008;
	font-weight: bold;
	font-size: 18px;
}
.textarea ul.normal-t li dd {
	float: left;
	width: 85%;
	padding-left: 2%;
	border-left: 1px solid #CCC;
}
.textarea ul.normal-t li dt.nobo {
	width: 20%;
}
.textarea ul.normal-t li dd.nobo {
	border: none;
	width: 75%
}
.m-box {
	margin-bottom: 50px;
}
p.closemodal {
	position: fixed;
	top: 30px;
	right: 40px;
	font-size: 20px;
}
.lock {
	overflow: hidden !important;
}
.textarea .square {
	border: 3px solid #CCC;
	padding: 25px;
	box-sizing: border-box
}
.textarea .square p span {
	font-weight: bold;
}
.textarea .square p {
	margin-bottom: 10px;
}
.textarea .square h3 {
	font-weight: bold;
	line-height: 170%;
	font-size: 20px;
	color: #333;
}
.textarea .square h3 span {
	color: #FAAE17;
	background: none;
	display: inline !important;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 22px;
}
@media only screen and (max-width:736px) {
.textarea .square {
	padding: 15px;
}
.textarea .square h3 {
	font-size: 16px;
}
.textarea .square h3 span {
	font-size: 18px;
}
.textarea ul.normal-t li dt {
	float: none;
 clear;
both;
	width: auto;
	font-family: Arial, Helvetica, sans-serif !important;
	padding: 0 0 15px 0;
	margin-right: 10px;
	padding-right: 10px;
	color: #feb008;
	font-weight: bold;
	font-size: 18px;
}
.textarea ul.normal-t li dd {
	float: none;
	width: auto;
	padding-left: 0;
	border-left: none;
}
.textarea ul.normal-t li dt.nobo {
	width: auto;
	float: none;
}
.textarea ul.normal-t li dd.nobo {
	border: none;
	width: auto;
	float: none;
}
p.closemodal {
	top: 10px;
	right: 10px;
}
p.closemodal img {
	max-width: 35px;
}
}
ul.talk {
	overflow: hidden;
	clear: both;
	margin-bottom: 50px;
	padding-right: 10px;
	box-sizing: border-box;
}
.pink {
	color: #da1c5c;
	font-weight: bold;
	margin-right: 10px;
	font-size: 16px;
}
ul.normal-t2 {
	margin-bottom: 50px;
	font-size: 14px;
}
ul.talk li {
	float: left !important;
	width: 20%;
	text-align: center;
}
ul.talk li p {
	font-size: 13px;
	text-align: left;
	border: 1px solid #999;
	padding: 20px;
	box-sizing: border-box;
	box-shadow: 10px 10px 0 #F7F7F7;
	font-style: italic;
}
p.ten {
	border: 1px dashed #999 !important;
}
ul.talk li span {
	display: block;
	font-weight: bold;
	font-size: 13px;
}
ul.talk li img {
	width: 60%;
}
.right-img {
	float: right;
}
@media only screen and (max-width:736px) {
ul.talk li {
	float: none !important;
	width: auto;
}
ul.talk li:nth-child(2) {
	position: relative;
	top: -40px;
	margin-bottom: -80px;
}
ul.talk li img {
	width: 30%;
}
}
.arrow {
	position: relative;
	width: 200px;
	height: 50px;
	margin: 50px 0 0 0;
	border-top: 8px solid #5bc0de;
	box-sizing: border-box;
}
.arrow p {
	font-size: 14px !important;
	font-weight: bold;
	color: #da1c5c;
	margin: 5px 0 0 0;
	border: none !important;
	padding: 0 !important;
	text-align: center !important;
	box-shadow: none !important;
	font-style: inherit !important;
}
.arrow:after {
	content: "";
	position: absolute;
	top: -18px;
	right: -17px;
	border: 14px solid transparent;
	border-left: 14px solid #5bc0de;
}
@media only screen and (max-width:736px) {
.arrow {
	border-top: none;
	border-right: 8px solid #5bc0de;
}
.arrow:after {
	content: "";
	position: absolute;
	top: auto;
	bottom: -20px;
	right: -17px;
	border: 14px solid transparent;
	border-top: 14px solid #5bc0de;
}
}
.arrow2 {
	position: relative;
	width: 200px;
	height: 50px;
	margin: 50px 0 0 0;
	border-top: 8px solid #FAAE17;
	box-sizing: border-box;
}
.arrow2 p {
	font-size: 18px !important;
	font-weight: bold;
	color: #da1c5c;
	margin: 5px 0 0 0;
	border: none !important;
	padding: 0 !important;
	text-align: center !important;
	box-shadow: none !important;
	font-style: inherit !important;
}
.arrow2 span {
	color: #FAAE17;
}
.arrow2:before {
	content: "";
	position: absolute;
	top: -18px;
	left: -17px;
	border: 14px solid transparent;
	border-right: 14px solid #FAAE17;
}
.arrow2:after {
	content: "";
	position: absolute;
	top: -18px;
	right: -17px;
	border: 14px solid transparent;
	border-left: 14px solid #FAAE17;
}
 @media only screen and (max-width:736px) {
.arrow2:before {
	content: "";
	position: absolute;
	top: -5px;
	left: auto !important;
	right: -19px;
	border: none !important;
	border-left: 14px solid transparent !important;
	border-right: 14px solid transparent !important;
	border-bottom: 14px solid #FAAE17 !important;
}
.arrow2 {
	position: relative;
	width: 200px;
	height: 50px;
	margin: 50px 0 0 0;
	border-top: none !important;
	border-right: 8px solid #FAAE17 !important;
	box-sizing: border-box;
}
.arrow2:after {
	content: "";
	position: absolute;
	top: auto !important;
	bottom: -25px;
	right: -18px;
	border-top: 14px solid #FAAE17 !important;
	border-left: 14px solid transparent !important;
	border-right: 14px solid transparent !important;
}
}
.arrow3 {
	position: relative;
	width: 200px;
	height: 50px;
	margin: 50px 0 0 0;
	border-top: 8px solid #5bc0de;
	box-sizing: border-box;
}
.arrow3 p {
	font-size: 14px !important;
	font-weight: bold;
	color: #da1c5c;
	margin: 5px 0 0 0;
	border: none !important;
	padding: 0 !important;
	text-align: center !important;
	box-shadow: none !important;
	font-style: inherit !important;
}
.arrow3:before {
	content: "";
	position: absolute;
	top: -18px;
	left: -17px;
	border: 14px solid transparent;
	border-right: 14px solid #5bc0de;
}
@media only screen and (max-width:736px) {
.arrow3 {
	border-top: none;
	border-right: 8px solid #5bc0de;
}
.arrow3:before {
	content: "";
	position: absolute;
	left: auto;
	right: -18px;
	border: 14px solid transparent;
	border-bottom: 14px solid #5bc0de;
}
}
@media only screen and (max-width:736px) {
#login-page{
	padding: 0 20px;
}
}

section#feed{
    position: relative;
}
section#feed:before{
    content:"";
    transition: all 0.5s ease-in-out;
    background: rgba(0,0,0,0);
    pointer-events: none;
}
section#feed.on:before{
    content:"";
    width:100%;
    height:100%;
    background: rgba(0,0,0,.8);
    position: fixed;
    z-index: 9;
}
section#feed article:not(:last-child){
    border-bottom: 2px solid #EEE;
    padding-bottom: 15px;
}
section#feed h2{
    padding: 10px 0;
}
section#feed h2 a{
    color: #0071bc;
    font-size: 13px;
    padding: 0 15px;
    font-weight: bold;
}
section#feed .action{
    display: flex;
    justify-content: space-between;
    margin: 0 15px;
    align-items: center;
}
section#feed .action ul.icon,
section#feed .action ul.text{
    display: flex;
    padding: 10px 0;
}
section#feed .action ul.icon li:first-child{
    margin-right: 20px;
}
section#feed .action ul.icon li img{
    width:30px;
}
section#feed .action ul.icon li button{
    border: none;
    background: none;
}
section#feed .action ul.text li {
    font-size:12px;
    font-weight: bold;
}
section#feed .action ul.text li:last-child{
    margin-left: 10px;
}
section#feed .action ul.text li span{
    padding: 0 5px;
    font-weight: bold;
    font-size: 125%;
}
section#feed .post{
    padding: 0 15px;
}
section#feed .post p a.more{
    color: #999;
}
section#feed .post p .omit{
    display: inline-block;
    margin-left:10px;
}
section#feed p#open-chat{
    position: fixed;
    bottom:85px;
    right:15px;
}
section#feed p#open-chat a{
    display: block;
    width:41px;
    background: none;
    border: none;
    box-shadow: 0px 5px 5px 0px rgba(0,0,0,.2);
    border-radius:50%;
    line-height: 0;
}
section#feed .comment-box{
    position: fixed;
    bottom:-100%;
    transition: all 1s ease-in-out ;
    left:0;
    width:100%;
    z-index: 999;
    background: #FFF;
    padding: 20px 0 0 ;
    border-radius:15px 15px 0 0;
}
section#feed .comment-box.open{
    /*bottom:68px;*/
    bottom:0px;
}
section#feed .comment-box .close-message{
    width:40px;
    background: none;
    border: none;
    display: block;
    margin: 0 auto -40px auto;
    position: relative;
    top:-40px;
}
html.locl,body.lock{
    overflow: hidden;
}

/*CHAT*/

.your_container{
    /* 高さや幅など、好きな様に設定
    bms_messages_containerの方で、縦横いっぱいに広がってくれるので、
    ここで充てた高さと横幅がそのままスタイルになる仕組み */
}
/* チャットの外側部分① */
.bms_messages_container{
    height: 100%;/*your_containerに対して100%になる */
    width: 100%;/*your_containerに対して100%になる */
}

/* ヘッダー部分② */
.bms_chat_header {
    padding: 6px;/*隙間調整*/
    font-size: 16px;
    height: 34px;
    background: #ddd;
    border: 1px solid #ccc;
}
/* ステータスマークとユーザー名 */
.bms_chat_user_status {
    float: left;/* bms_chat_headerに対して左寄せ */
}
/* ステータスマーク */
.bms_status_icon {
    float: left;/* bms_chat_user_statusに対して左寄せ */
    line-height: 2em;/*高さ調整*/
}
/* ユーザー名 */
.bms_chat_user_name {
    float: left;/* bms_chat_user_statusに対して左寄せ */
    line-height: 2em;/*高さ調整*/
    padding-left: 8px;
}

/* タイムライン部分③ */
.bms_messages {
    overflow: auto;/* スクロールを効かせつつ、メッセージがタイムラインの外に出ないようにする */
    height:100%;/*テキストエリアが下に張り付く様にする*/
    padding-bottom: 20px;
    max-height: 30vh;
    overflow-y: scroll;

}
/* メッセージ全般のスタイル */
.bms_message {
    padding: 0 14px;/*吹き出しがタイムラインの側面にひっつかない様に隙間を開ける*/
    font-size: 16px;
    word-wrap: break-word;/* 吹き出し内で自動で改行 */
    white-space: normal;/*指定widthに合わせて、文字を自動的に改行*/
    margin-top: 20px;/*上下の吹き出しがひっつかない様に隙間を入れる*/
    display: flex;
    align-items: center;
}

.bms_message .btn-edit-comment, .bms_message .btn-delete-comment, .bms_message .btn-edit-answer, .bms_message .btn-delete-answer{
    margin-right: 10px;
    display: flex;
    border: none;
    background: unset;
}

.bms_message .btn-answer{
    margin-left: 10px;
    display: flex;
    border: none;
    color: #f5835f;
    font-size: 12px;
    background: unset;
}

.bms_message .btn-edit-comment img, .bms_message .btn-delete-comment img, .bms_message .btn-edit-answer img, .bms_message .btn-delete-answer img{
    width: 20px;
    margin: 0 5px 0 0;
}

.bms_message_box{
    max-width: 100%;/*文字が長くなった時に吹き出しがタイムラインからはみ出さない様にする*/
    font-size: 16px;
}
.bms_message_content{
    font-size: 14px;
    padding: 15px;/*文字や画像（コンテンツ）の外側に隙間を入れる*/
}
.bms_message_content span{
    font-size: 12px;
    background: #FFF;
    padding: 3px 6px;
    border-radius:50px;
}
.bms_message_content span small{
    font-size: 10px;
}
/* メッセージ１（左側） */
.bms_left {
    float: left;/*吹き出しをbms_messagesに対して左寄せ*/
    line-height: 1.3em;
    margin-right: 50px;/*左側の発言だとわかる様に、吹き出し右側に隙間を入れる*/
}
.bms_left .bms_message_box {
    color: #333;/*テキストを黒にする*/
    background: #f2f2f2;
    border-radius: 30px 30px 30px 0px;/*左下だけ尖らせて吹き出し感を出す*/
}
/* メッセージ２（右側） */
.bms_right {
    float: right;/*吹き出しをbms_messagesに対して右寄せ*/
    line-height: 1.3em;
    margin-left: 50px;
}
.bms_right .bms_message_box {
    color: #fff;/*テキストを白にする*/
    background: rgba(245,131,95,.1);
    border-radius: 30px 30px 0px 30px;/*右下だけ尖らせて吹き出し感を出す*/
}
/* 回り込みを解除 */
.bms_clear {
    clear: both; /* 左メッセージと右メッセージの回り込み(float)の効果の干渉を防ぐために必要（これが無いと、自分より下のメッセージにfloatが影響する） */
}

/* テキストエリア、送信ボタン④ */
.bms_send {
    background-color:#eee;/*タイムラインの色と同じにする*/
    padding: 15px;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}
.bms_send_message{
    width: calc(100% - 60px);/*常に送信ボタンの横幅を引いたサイズに動的に計算*/
    line-height: 16px;
    padding: 15px 15px;/*文字がテキストエリアの中心になる様に隙間調整*/
    border: none;
    border-radius: 15px;/*角丸*/
    text-align: left;/*文字を左寄せ*/
    box-sizing: border-box;/*paddingとborderの要素の高さと幅の影響をなくす（要素に高さと幅を含める）*/
    font-size: 14px;
    height: 48px;

}
.send {
    font-size: 16px;
    line-height: 0;
    color: #fff;
    font-weight: bold;
    background: none;
    text-align: center;/*文字をボタン中央に表示*/
    border: none;
    width:46px;
    box-sizing: border-box;/*paddingとborderの要素の高さと幅の影響をなくす（要素に高さと幅を含める）*/
}

section#post{
    background: rgba(41,171,226,.1);
    min-height: calc(100vh - 68px - 48px);
    padding: 0 20px;
    box-sizing: border-box;
}

section#post h2{
    text-align: center;
    font-weight:bold;
    padding: 20px;
}
section#post dl {
    margin-bottom: 20px;
}
section#post dl dt{
    margin-bottom: 10px;
    font-size: 14px;
}
section#post dl dd textarea{
    border: none;
    border-radius:10px;
    padding: 10px;
    width: 100%;
    box-sizing: border-box;
    height: 200px;
}
#preview img {
    width: 100%;
}
section#post button#submit{
    background: #29abe2;
    color: #FFF;
    border-radius:10px;
    text-align: center;
    font-weight: bold;
    display: block;
    border: none;
    width: 100%;
    box-sizing: border-box;
    padding: 15px;
    box-shadow: 0px 5px 5px 0px rgba(0,113,188,.2);
}
.originalFileBtn {
    border: 2px solid #f5835f;
    text-align: center;
    border-radius:10px;
    color: #f5835f;
    font-weight: bold;
    display: block;
    padding: 15px;
    position: relative;
}
.originalFileBtn input[type="file"] {
    height: 100%;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    width: 100%;
}
section#feed .edit-delete{
    padding: 15px 15px 0 15px;
}
section#feed .edit-delete ul{
    display: flex;
}
section#feed .edit-delete ul li:first-child{
    margin: 0 15px 0 0;
}
section#feed .edit-delete ul li button{
    display: flex;
    border: none;
    background: none;
    color: #f5835f;
    font-weight: bold;
    font-size: 13px;
}
section#feed .edit-delete ul li button img{
    width: 20px;
    margin: 0 5px 0 0;
}
section#feed .post-edit{
    margin: 0 15px;
}
section#feed .post-edit textarea{
    font-size: 14px;
    padding: 10px;
    width: 100%;
    min-height: 100px;
    border-radius:10px;
    box-sizing: border-box;
}

section#feed .post-edit .btn-save-activity{
    padding: 5px 25px;
    box-sizing: border-box;
    background: #F05A28;
    border: none;
    border-radius: 30px;
    font-size: 13px;
    color: #FFF;
    letter-spacing: 3px;
    margin: 0 auto;
    display: block;
}

select#post-filter{
    position: relative;
    width: 100%;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding: 0;
    background: #F7F7F7;
    font-weight: bold;
}
.select-box {
    position: relative;
    width: 100%;
    padding: 10px 15px;
    box-sizing: border-box;
    font-size: 13px;
    border-bottom: 3px solid #EEE;
    background: #F7F7F7;
    position: sticky;
    top:51px;
}
.select-box:after {
    content: "";
    position: absolute;
    right: 15px;
    top: 19px;
    width: 5px;
    height: 5px;
    border-top: 2px solid #333;
    border-left: 2px solid #333;
    pointer-events: none;
    transform: translateY(-50%) rotate(
        -135deg);
}
textarea.bms_message_text{
    padding: 10px;
    border-radius:10px;
}


/*New Columns*/
.columns {
    margin: auto;
    padding: 30px 35px;
    max-width: 900px;
    background: rgb(247, 238, 232);
    border-radius: 10px;
}

@media screen and (min-width: 736px) {
  .columns {
    padding: 20px;
  }
}
@media screen and (min-width: 736px) {
  .columns {
    padding: 20px;
  }
}

@media screen and (min-width: 380px) {
  .columns > ul {
    display: flex;
    flex-wrap: wrap;
  }
}
.columns > ul > li {
  background-color: #ffffff;
}
@media screen and (max-width: 379px) {
  .columns > ul > li:not(:last-child) {
    margin-bottom: 10px;
  }
}
@media screen and (min-width: 380px) {
  .columns > ul > li {
    margin: 8px;
    width: calc(50% - 16px);
    flex: 0 0 auto;
  }
}
@media screen and (min-width: 1024px) {
  .columns > ul > li {
    width: calc(((100% - 1px) / 3) - 16px);
  }
}
.columns > ul > li > a {
  display: block;
  padding: 10px;
}
@media screen and (min-width: 736px) {
  .columns > ul > li > a {
    transition: opacity 0.3s;
  }
  .columns > ul > li > a:hover {
    opacity: 0.6;
  }
}
@media screen and (max-width: 379px) {
  .columns > ul > li > a {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
  }
}
.columns > ul > li > a .list_img {
  overflow: hidden;
  display: block;
  width: 100%;
  height: 0;
  padding-bottom: 52.6%;
  position: relative;
}
@media screen and (max-width: 379px) {
  .columns > ul > li > a .list_img {
    width: 48%;
    padding-bottom: 25.24%;
    flex: 0 0 auto;
  }
}
.columns > ul > li > a .list_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
}
.columns > ul > li > a .list_img img {
  position: absolute;
  top: 0;
  left: 0;
}
.columns > ul > li > a > span,
.columns > ul > li > a .list_txt > span {
  background-color: #000000;
  color: #ffffff;
  font-weight: bold;
  font-size: 1rem;
}
@media screen and (min-width: 736px) {
  .columns > ul > li > a > span,
  .columns > ul > li > a .list_txt > span {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 379px) {
  .columns > ul > li > a .list_txt {
    width: 48%;
  }
}
.columns > ul > li > a .list_txt time {
  display: block;
  font-size: 1rem;
}
@media screen and (min-width: 736px) {
  .columns > ul > li > a .list_txt time {
    font-size: 1.2rem;
  }
}
.columns > ul > li > a .list_txt > p {
  font-weight: bold;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-line-clamp: 2;
}
@media screen and (min-width: 736px) {
  .columns > ul > li > a:hover .list_txt p {
    text-decoration: underline;
    color: #EB8D23;
  }
}
.columns > ul > li {
  position: relative;
  border-radius: 10px;
}

.columns > ul > li > a > span {
  position: absolute;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  display: block;
  left: 0;
  top: 0;
  max-height: 100%;
  box-sizing: border-box;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  padding: 0.3em 0;
}

.columns > ul > li ul {
  display: flex;
  width: 100%;
  box-sizing: border-box;
  margin-top: -5px;
  padding: 0 10px 10px calc((1rem * 1.6) + 10px);
}
@media screen and (min-width: 736px) {
  .columns > ul > li ul {
    padding-left: calc((1.2rem * 1.6) + 10px);
  }
}
.columns > ul > li ul li:not(:last-child) {
  margin-right: 1em;
}
.columns > ul > li ul li a {
  display: block;
  border: 1px solid #000000;
  padding: 0.1em 0.8em;
  font-size: 0.8rem;
  transition: background-color 0.3s;
}
@media screen and (min-width: 736px) {
  .columns > ul > li ul li a:hover {
    background-color: #efefef;
  }
}
.columns > a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 12em;
  font-weight: bold;
  margin: 1em 0 0 auto;
}
@media screen and (min-width: 736px) {
  .columns > a {
    transition: opacity 0.3s;
  }
  .columns > a:hover {
    opacity: 0.6;
  }
}

.columns > a::after {
  content: "";
  display: block;
  width: 25px;
  height: 25px;
  background-color: #000000;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIKCSB5PSIwcHgiIHZpZXdCb3g9IjAgMCAxMiAxMiIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMTIgMTIiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8cGF0aCBkPSJNMC44LDAuOEwxMS4yLDZMMC44LDExLjJWMC44eiIgZmlsbD0iI0ZGRkZGRiIvPgo8L3N2Zz4K");
  background-repeat: no-repeat;
  background-position: 60% center;
  background-size: 50%;
  border-radius: 50%;
}
h2.maintitle {
	text-align: center;
	color: #333;
	font-size: 16px;
	padding: 10px 0;
	font-weight: 500;
	white-space: nowrap;
		border-top: 3px solid #EEE;
		border-bottom: 3px solid #EEE;
}
p.all-btn a{
	display: block;
	background: #1C75BC;
	color: #FFF;
	width:fit-content;
	padding:	10px 30px;
	margin: 20px auto 0 auto;
}
.banner{
	padding: 15px;
}
.banner ul{
	display: flex;
	justify-content: space-between;
	margin: 10px 0 0 0;
}
.banner ul li{
	width:48%;
}