@charset "utf-8";

@media screen and (min-width: 641px){

img {max-width: 100%; height: auto; width /***/:auto;}
#wrapper {width:100%;}

/*-- default style clear ---------------------*/
* {
	margin: 0;
	padding: 0;}

body {
	font-family: Montserrat, "qMmpSPro W3", "Hiragino Kaku Gothic Pro", "CI", Meiryo, "lr oSVbN", sans-serif;
	font-size: 74.5%;
	font-weight : normal;
	font-style : normal;
	text-align: center;
	line-height: 1.6;
	color: #000;
	background-color: #ffffff;}

h1,h2,h3,h4,h5,h6,address,strong,th {
	/*font-family: 'Montserrat';*/
	font-size: 100%;
	font-weight: normal;
	font-style: normal;}
	
img {
    border-style: none;
    vertical-align: bottom;}
		
ul,ol {list-style: none;}

strong,em {font-style: normal;}

a {color: #7cc3e8;}

a:hover,
.ul01 li input:hover {
	text-decoration: none;
	filter: alpha(opacity=70);
	-moz-opacity:0.7;
	opacity:0.7;
	transition: 0.2s ease-in-out;
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-ms-transition: 0.2s ease-in-out;}


/*-- layout ---------------------*/
#wrapper {
	margin: 0 auto;
	width: 982px;
	text-align: left;}



/*-- footer ---------------------*/
#footer_wrap {background-color: #fcf9ef;}

#footer {
	position: relative;
	margin: 0 auto;
	width: 982px;
	font-size: 100%;
	text-align: center;}

#footer a {
	text-decoration: none;
	color: #000;
	filter: alpha(opacity=100);
	-moz-opacity:1.0;
	opacity:1.0;}

#footer a:hover {color: #888;}

#footer .pagetop {
	position: absolute;
	top: -22px;
	right: -20px;}

#footer ul {padding: 32px 0 32px;}

#footer ul li {
	display: inline-block;
	margin-right: 6px;
	padding-right: 6px;
	border-right: 1px solid #999;}

#footer ul li:last-child {
	margin-right: 0;
	padding-right: 0;
	border: none;}

#footer address {
	padding-bottom: 32px;
	color: #333;}



/*-- main ---------------------*/
#main_right {
	float: right;
	padding-bottom: 140px;
	width: 716px;}

#main_left {width: 226px;}

#main_left .sidemenu {
width:210px;
	position: fixed;
	background-color: #fff;}

#main_left .navtxt01 a {
	display: block;
	padding: 28px 0 28px 49px;
	border-bottom: 1px solid #fcf9ef;}

#main_left .nav01 a,
#main_left .nav02 a,
#main_left .nav03 a,
#main_left .nav04 a,
#main_left .nav05 a,
#main_left .nav06 a {
	display: block;
	padding: 16px 0 16px 40px;
	font-size: 125%;
	text-decoration: none;
	color: #000;
	border-bottom: 1px solid #fcf9ef;}

#main_left .nav03 a {
	padding-bottom: 12px;
	border-bottom: none;}

#main_left .nav01 a {background: url(../img/icon0101_off.png) no-repeat 16px center;}
#main_left .nav02 a {background: url(../img/icon0102_off.png) no-repeat 15px center;}
#main_left .nav03 a {background: url(../img/icon0103_off.png) no-repeat 16px center;}
#main_left .nav04 a {background: url(../img/icon0104_off.png) no-repeat 19px center;}
#main_left .nav05 a {background: url(../img/icon0105_off.png) no-repeat 15px center;}
#main_left .nav06 a {background: url(../img/icon0106_off.png) no-repeat 16px center;}

#main_left .nav01 a span, 
#main_left .nav02 a span, 
#main_left .nav03 a span,
#main_left .nav04 a span,
#main_left .nav05 a span,
#main_left .nav06 a span{
	display: block;
	margin-right: 8px;
	background: url(../img/line02.gif) no-repeat right center;}

#main_left .nav01 a:hover span, 
#main_left .nav02 a:hover span, 
#main_left .nav03 a:hover span,
#main_left .nav04 a:hover span,
#main_left .nav05 a:hover span,
#main_left .nav06 a:hover span,
#main_left .nav01 a.on span, 
#main_left .nav02 a.on span, 
#main_left .nav03 a.on span,
#main_left .nav04 a.on span,
#main_left .nav05 a.on span,
#main_left .nav06 a.on span {background: url(../img/line01.gif) no-repeat right center;}

#main_left .nav01 a:hover,
#main_left .nav01 a.on {color: #7cc3e8; background: url(../img/icon0101_on.png) no-repeat 16px center;}
#main_left .nav02 a:hover,
#main_left .nav02 a.on {color: #7cc3e8; background: url(../img/icon0102_on.png) no-repeat 15px center;}
#main_left .nav03 a:hover,
#main_left .nav03 a.on {color: #7cc3e8; background: url(../img/icon0103_on.png) no-repeat 16px center;}
#main_left .nav04 a:hover,
#main_left .nav04 a.on {color: #7cc3e8; background: url(../img/icon0104_on.png) no-repeat 19px center;}
#main_left .nav05 a:hover,
#main_left .nav05 a.on {color: #7cc3e8; background: url(../img/icon0105_on.png) no-repeat 15px center;}
#main_left .nav06 a:hover,
#main_left .nav06 a.on {color: #7cc3e8; background: url(../img/icon0106_on.png) no-repeat 16px center;}

#main_left .nav0301 a,
#main_left .nav0302 a,
#main_left .nav0303 a,
#main_left .nav0304 a{
	display: block;
	padding: 6px 0 6px 52px;
	font-size: 125%;
	text-decoration: none;
	color: #000;}

#main_left .nav0304 a {
	padding-bottom: 18px;
	border-bottom: 1px solid #fcf9ef;}

#main_left .nav0301 a span,
#main_left .nav0302 a span,
#main_left .nav0303 a span,
#main_left .nav0304 a span{
	display: block;
	margin-right: 8px;
	background: url(../img/line03.gif) no-repeat right center;}

#main_left .nav0301 a:hover span,
#main_left .nav0302 a:hover span,
#main_left .nav0303 a:hover span,	
#main_left .nav0304 a:hover span{
	color: #7cc3e8;
	background: url(../img/line01.gif) no-repeat right center;}

#main_left .nav_banner{display:block;margin:10px 0;text-align:center;}

.tith201 {
	padding-top: 80px;
	margin-bottom: 25px;
	font-size: 300%;
	border-bottom: 1px dashed #ccc;}

.tith201 span {
color:#7cc3e8;
	margin-left: 20px;
	padding-left: 20px;
	border-left: 1px dotted #000;}

.tith301 {
	padding: 0 0 4px 17px;
	font-size: 125%;
	font-weight: bold;
	letter-spacing: 0.1em;
	background: url(../img/icon.png) no-repeat 0 11px;}

.tith401 {
	font-size: 125%;
	font-weight: bold;}

.txt01 {
	font-size: 150%;
	text-indent: 1em;
	line-height: 1.8;}

.txt02 {
	margin: 8px 0 20px;
	font-size: 145%;
	line-height: 1.7;}

.txt03 {
	margin: 8px 0 20px;
	font-size: 125%;
	line-height: 1.7;}

.txt04 {
	font-size: 125%;
	line-height: 1.7;}

.line01 {
	padding-top: 12px;
	border-top: 1px dashed #ddd}

#rndBnr {margin: 26px 0;}

#rndBnr li {display: none; }

.dl01 dt {
font-weight:bold;
	margin: 12px 0 4px;
	font-size: 200%;}

.dl01 dd {
	margin-bottom: 40px;
	padding-left: 13px;
	font-size: 109%;
	background: url(../img/icon.png) no-repeat 0 7px;}

.dl01p {
	margin: 12px 0 60px;
	font-size: 180%;}
.dl01p span{font-weight:bold;}

.dl01 dd.last {margin-bottom: 60px;}

.dl02 dt {
	padding: 0 0 4px 8px;
	font-size: 109%;}

.dl02 dd input {
	margin-bottom: 20px;
	width: 100%;
	height: 28px;
	font-size: 125%;
	text-indent: 3px;
	border: 1px solid #eee;}

.dl02 dd textarea {
	padding: 3px;
	width: 100%;
	min-height: 150px;
	font-size: 125%;
	border: 1px solid #eee;}

.dl03 dt {float: left;}

.dl03 dd {
	padding: 72px 0 0 300px;
	font-size: 125%;
	line-height: 2.3;
	letter-spacing: 0.1em;}

.dl03 dd em {
	display: block;
	margin-top: 12px;
	text-align: right;}

.dl04 dt {
	clear: left;
	float: left;
	padding: 3px 0 3px 3px;
	width: 92px;
	font-size: 109%;
	background-color: #f8f8f8;}

.dl04 dd {padding: 3px 0 16px 108px;}

.dl05 {
	margin-left: 1em;
	font-size: 125%;}

.dl05 dd {margin: 4px 0 8px 1em; font-weight: normal;}

.dl05 dd ol li {
	margin: 0 0 8px 1em;
	list-style-position: outside;
	list-style-type: disc;}

.ul01 {text-align: center;}

.ul01 li {
	display: inline-block;
	margin: 20px 8px 0 8px;}

.ul01 li input {
	padding: 12px 80px;
	font-family: Montserrat, "qMmpSPro W3", "Hiragino Kaku Gothic Pro", "CI", Meiryo, "lr oSVbN", sans-serif;
	font-size: 117%;
	text-align: center;
	letter-spacing: 0.1em;
	background: linear-gradient(#fff, #eee);
	background: -ms-linear-gradient(#fff, #eee);
	background: -moz-linear-gradient(top, #fff, #eee);
	background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#eee));
	border: 1px solid #eee;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	cursor: pointer;}

.ul02 li {
	margin: 0 20px 8px 0;
	padding-left: 17px;
	font-size: 125%;
	background: url(../img/arrow01.gif) no-repeat 0 center;}

.ul02 li.on {background: url(../img/arrow02.gif) no-repeat 0 center;}

.ul02 li.on a {
	font-weight: bold;
	text-decoration: none;
	color: #000;}

.ul03 {padding-bottom: 28px;}

.ul03 li {
	float: left;
	margin: 0 12px 12px 0;
	padding: 8px 0;
	border: 1px solid #eee;}

.ul03 li span {
	display: block;
	padding-top: 4px;
	font-size: 84%;
	text-align: center;}

.ol01 li {
	margin: 0 0 8px 36px;
	list-style-position: outside;
	list-style-type: disc;}

.ol02 li {
	margin: 0 0 8px 2em;
	font-size: 125%;
	list-style-position: outside;
	list-style-type: disc;}

.link01 {
	padding-left: 17px;
	background: url(../img/arrow01.gif) no-repeat 0 center;}

#fbbox{width:100%;text-align:center;margin-bottom:70px;}

.table01 {
	width: 716px;
	border-collapse: collapse;
	font-size: 100%;}

.table01 tr,
.table01 th,
.table01 td {
	padding: 16px;
	font-size: 109%;
	text-align: left;
	vertical-align: middle;
	border: 1px solid #eee;}

.table01 th{background-color:#f8f8f8;font-family:Montserrat,"qMmpSPro W3","Hiragino Kaku Gothic Pro","CI",Meiryo,"lr oSVbN",sans-serif;}
.table01 th.center {text-align: center;}
.table01 td a.fb{margin-left:30px;}
.table01 td a.mail{margin-left:5px;}
.table01 td img{width:25px;}

.nowrap {white-space: nowrap;}

#header,
#accordion,
.pagetop_s,
.la_button_sp,
.la_button_white_sp {display: none;}

}
.category‐mb {
	display: block;
	margin-bottom: 150px;
}

/*-------言語切替ボタン--2021.7追記--2024.1更新--------------------*/

.lang{
	display: flex;
	flex-direction: row;
	text-decoration: none;
}

.la_button{
    background: #7cc3e8;
    color: #fff;
    padding: 0.5rem 0;
    text-decoration: none;
    border: 1px solid #7cc3e8;
    display: block;
    text-align: center;
	width: 50%;
}

.la_button_white{
    color: #7cc3e8;
    border: 1px solid #7cc3e8;
    background: #fff;
    padding: 0.5rem 0;
    text-decoration: none;
    border: 1px solid #7cc3e8;
    display: block;
    text-align: center;
	width: 50%;
}

/* rApps */

.app_icon_area{
	width: 100%;
	display: flex;
	flex-flow: row;
	margin: auto;
	justify-content: center;
}

.app_icon_img{
	width: 120px;
	height: auto;
	margin: 0 70px 25px 70px;
	box-shadow: 7px 7px 15px -5px #777777;
	border-radius: 17px;
}