@charset "utf-8";

/* base
------------------ */
/* reset */
html,body,div,h1,h2,h3,h4,h5,h6,p,blockquote,q,pre,table,caption,colgroup,col,tbody,thead,tfoot,tr,th,td,ul,ol,li,dl,dt,dd,form,fieldset,legend,label,span,a,img,em,ins,del,cite,abbr,sup,sub,dfn,code,var,samp,kbd,object,script,noscript,style,iframe,embed,param,map,area,menu,hr,address,small,strong,i,b,article,aside,figure,footer,header,hgroup,nav,section,figcaption,time,video,audio,mark,ruby,rt,rp,bdo,source,canvas,details,summary,command,datalist,keygen,output,progress,meter{margin:0;padding:0;outline:0;}
address,article,aside,figure,figcaption,footer,header,hgroup,hr,legend,menu,nav,section,summary{display:block;}
h1,h2,h3,h4,h5,h6{font-size:100%;}

/* body */
body{
	color:#333;
	line-height:1.7;
	font-size:100%;/*16px*/
	font-family:"游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS Gothic", sans-serif;
	font-weight: 500;
	word-break:break-all;
	background-color: #EDFCFF;
}

@media screen and (orientation:landscape){
body{
	-webkit-text-size-adjust:100%;
}
}

/* リンク */
a:link{color:#0070ad;text-decoration:underline;}
a:visited{color:#865d86;text-decoration:underline;}
a:hover{color:#288ec6;text-decoration:none;}

/* タグ共通 */
img{border:none;max-width:100%;}
p{margin:0 0 1.5rem 0; line-height: 2;}
hr{border:none;border-top:1px solid #ccc;margin:3rem auto;clear:both;}
table{empty-cells:show;border:none;border-collapse:collapse;max-width:100%;}

/*テキスト関係*/
.smaller{font-size:75%;}/*12px*/
.larger{font-size:125%;}/*20px*/
.bold{font-weight:bold;}
.normal{font-weight:normal;}
.blue{color:#123E5F;}
.gray{color:#666;}
.highlight{background:-webkit-gradient(linear, left top, left bottom, from(#ffec95), to(#ffec95));background:linear-gradient(transparent 55%, #ffec95 55%);}
.highlight{background:-webkit-gradient(linear, left top, left bottom, from(#ffec95), to(#ffec95));background:linear-gradient(transparent 55%, #ffec95 55%);}
.f-vertically{ writing-mode: vertical-rl; margin: 0 auto 2rem;}
.f-note{font-family: 'Noto Serif JP', serif;}

/*リスト*/
li{list-style:none;}
ul.list_mark{margin-bottom:1.5rem;}
ul.list_mark li{list-style:disc;margin-left:1.5em;}
ol.list_mark{margin-bottom:1.5rem;}
ol.list_mark li{list-style:decimal;margin-left:1.5rem;}
dl.dl_default{margin-bottom:1.5rem;}
dl.dl_default dt{font-weight:bold;}
dl.dl_default dd{margin-left:1em;}

/* テキスト揃え */
.ac{text-align:center;}
.al{text-align:left;}
.ar{text-align:right;}
.vam{vertical-align:middle;}
.vat{vertical-align:top;}

/* フロート */
.fl{float:left;}
.fr{float:right;}
.cl{clear:both;}

/* マージン */
.ma{margin-right:auto;margin-left:auto;}
.ml{margin-left:1rem;}
.mr{margin-right:1rem;}
.mb{margin-bottom:1rem;}
.mb0{margin-bottom:0;}
.mb_s,.mb_m{margin-bottom: 2rem}
.mb_l{margin-bottom: 6rem}
.mb_xl{margin-bottom: 8rem}

@media print, screen and (min-width: 760px){

.mb_s{margin-bottom: 2rem}
.mb_m{margin-bottom: 4rem}

}

/* エフェクト */
.fade:hover{opacity:0.8;transition:0.2s;}

/* アコーディオン */
.trg{
	cursor:pointer;
}

/* header
------------------ */
#header{
	display: flex;
	justify-content:space-between;
	align-items: center;
	line-height: 1.0;
}

/* ロゴ */
#logo01{
}

/* スマホメニューボタン */
#sp_nav_trg{
	width: 4rem;
	padding: 1.2rem 0;
	text-align: center;
	font-size: 175%;
	background: #abcdef;
}

@media print, screen and (min-width: 980px){
#sp_nav_trg{
	display: none;
}
}

/* pc nav
------------------ */
#pc_nav{
	display: none;
}

@media print, screen and (min-width: 980px){
#pc_nav{
	display: block;
	background: #abcdef;
	text-align: center;
}

#pc_nav li{
	display: inline-block;
}

#pc_nav a{
	display: block;
	padding: 1rem 1.5rem;
	text-decoration: none;
	color: #333;
	transition: 0.2s;
}

#pc_nav a:hover{
	background: #bcdeff;
}
}

/* sp nav
------------------ */
#sp_nav{
	display: none;
	width: 100%;
}

/* スマホメニュー閉じるボタン */
#sp_nav_close_top{
	float: right;
	font-size: 200%;
	padding: 1rem 0.5rem;
}

#sp_nav_close_bottom{
	max-width: 60%;
	margin: 0 auto;
	text-align: center;
	border-radius: 3px;
	background: #bcdeff;
	padding: 1rem 0;
}

/* スマホメニュー */
#sp_nav ul{
	clear: both;
	border-top: 1px solid #000;
	margin-bottom: 2rem;
}

#sp_nav li{
	border-bottom: 1px solid #000;
}

#sp_nav li a{
	display: block;
	padding: 1rem;
}

/* footer
------------------ */
#footer{
	color: #fff;
	background: #4AB8DF;
	margin-top: 6rem;
}

/* フッターリンク */
#footer_link li{
	border-bottom: 1px solid #000;
}

#footer_link li a{
	display: block;
	padding: 1rem;
}

@media print, screen and (min-width: 980px){
#footer_link{
	text-align: center;
}

#footer_link li{
	border-bottom: none;
	display: inline-block;
}
}

/* copyright */
#cpr{	
	text-align: center;
	padding: 1rem 0;
	font-size: 75%;
}

/* main
------------------ */
/* レイアウト */
/*#main{
	margin: 1rem 0 0 0;
}*/

.section{
	margin: 0 1rem 4rem 1rem;
	overflow: hidden;
}

.flex_box{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.column_2 .c-item{ width: 100%; box-sizing: border-box;}
.column_2 .ph_wrap {width: 98%; margin: 0 auto;}



@media print, screen and (min-width: 960px){
.section{
	margin: 0 auto 4rem auto;
	/*width: 980px;*/
}
.column_2 .c-item{ width: 50%; box-sizing: border-box;}
.column_2 .ph_wrap {width: calc(50% - 2rem); margin: 0;}
}

/* パンくずリスト */
#path{
	font-size: 0.75rem;
	/*background: #efefef;*/
	padding: 0.5rem;
	margin-bottom: 2rem;
	text-align: right;
}

/* メインビジュアル */
#mv{
	background: #f00;
	text-align: center;
	font-size: 150%;
}

/* 見出し */
.h01{
	font-size: 175%;
}

.h02{
	font-size: 2rem;
}

.h02::after{
	content:"";
	display: block;
	width: 3rem;
	height: 2rem;
	margin: 0 auto;
	background: url("../../img_index/h.png") no-repeat center / contain;
}

.h03{
	font-size: 125%;
}

@media print, screen and (min-width:960px){

.h02{
	font-size: 2.25rem;
}
}

/* ボタン */

.btn_wrap{
	justify-content: center;
}

a.btn{
	width: 80%;
	display: inline-block;
	/*border-radius: 5px;*/
	text-align: center;
	background: #DE9527;
	transition: 0.2s;
	text-decoration: none;
	color: #fff;
	padding: 1rem 3rem 1.5rem;
	position: relative;
}

a.btn::after{
	content: "";
	display: block;
	width: 100%;
	height: 0.5rem;
	background: rgba(0,0,0,0.5);
	position: absolute;
	left: 0; bottom: 0;
}

a.button:hover{
	background: #bcdeff;
}

input.button{
	display: inline-block;
	border-radius: 5px;
	border: none;
	text-align: center;
	background: #abcdef;
	transition: 0.2s;
	text-decoration: none;
	color: #fff;
	padding: 0.8rem 3rem;
}

input.button_submit{
	font-size: 125%;
	background: #f90;
}

input.button_cancel{
	font-size: 87.5%;
	background: #ccc;
}

@media print, screen and (min-width:960px){

a.btn{
	width: 40%;
}
}

/* table */
.ta{
	width: 100%;
	/*margin-bottom: 2rem;*/
}

.ta th{
	color: #fff;
	border: 1px solid #ccc;
	background: #4AB8DF;
	text-align: left;
	padding:2rem .5rem;
	width: 30%;
	box-sizing: border-box;
}

.ta td{
	padding:.5rem;
	border: 1px solid #ccc;
}


@media print, screen and (min-width:960px){

.ta th{
	padding:1.5rem;
}
.ta td{
	padding:2.5rem 1.5rem;
}
}

/* フォーム */
input,textarea,select{
	width: 100%;
	font-family:Meiryo, sans-serif;
	font-size: 100%;
}

input[type=reset],input[type=button],input[type=submit],input[type=cancel],textarea{
	-webkit-appearance: none;
    appearance: none;
}

input[type=button],input[type=submit],input[type=cancel],input[type=file], select,label{
	cursor: pointer;
}

input::placeholder{ /*入力欄に最初から入っている字*/
	color: #ccc;
	font-size: 87.5%;
}


input.btn{
	display: inline-block;
	border-radius: 5px;
	border: none;
	text-align: center;
	background: #abcdef;
	transition: 0.2s;
	text-decoration: none;
	color: #fff;
	padding: 0.8rem 5rem;
	margin: 0 2rem;
	cursor: pointer;
}

input.btn_submit{
	font-size: 125%;
	background: #0070ad;
    border: 1px solid;
}

input.btn_cancel{
	font-size: 87.5%;
	background: #ccc;
}


input.w_s{ width:50%;}
input.w_m{ width:70%;}
input.w_l{ width:90%;}
input.w_xl{ width:100%;}

@media print, screen and (min-width:960px){
	input.w_s{ width:20%;}
	input.w_m{ width:40%;}
	input.w_l{ width:60%;}
	input.w_xl{ width:80%;}
}


.textbox{ /*文字入力欄*/
	border: 1px solid #999;
	padding: 3px;
	margin: 1px;
	box-shadow: 1px 1px 5px rgba(0,0,0,0.1) inset;
}

.required{ /*「必須」の文字*/
	color: #f00;
	font-weight: normal;
	font-size: 75%;
}

.note{ /*入力欄の上の注意書き*/
	color: #999;
	font-size: 87.5%;
}

/* 送信ボタンエリア */
.submit_area{
	text-align: center;
	margin: 2rem 0;
}

.submit_area .button{
	display: block;
	margin: 0 auto 3rem auto;
}

/* エラー表示 */
div.error{
	color: #f00;
	font-weight: bold;
}

td.error{
	background: #ffd;
	color: #288ec6;
    font-weight: bold;
}


/* ---------------------
※メディアクエリの例（あとで消して下さい）
------------------------*/
@media print, screen and (min-width: 980px){} /* 画面が980px以上の場合（＆ 印刷の場合）*/
@media screen and (max-width: 480px){} /* 画面が480px以下の場合 */
@media screen and (min-width: 480px) and (max-width: 980px){} /* 画面が480～980pxの場合 */
@media screen and (orientation:landscape){} /* 画面の横が縦より長い場合（スマホ横向きの代用として使える）*/
@media screen and (orientation:portrait){} /* 画面の縦が横より長い場合 */

/*eof*/