@charset "utf-8";


/*リセットCSS（sanitize.css）の読み込み
---------------------------------------------------------------------------*/
@import url("https://unpkg.com/sanitize.css");

/*slick.cssの読み込み
---------------------------------------------------------------------------*/
@import url("https://cdn.jsdelivr.net/npm/slick-carousel@1.8.1/slick/slick.css");

/*Font Awesomeの読み込み
---------------------------------------------------------------------------*/
@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css");

/*Google Fontsの読み込み
---------------------------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP');

/*テンプレート専用cssファイルの読み込み
---------------------------------------------------------------------------*/
@import url("animation.css");
@import url("inview.css");



/*全体設定
---------------------------------------------------------------------------*/
html,body {
	margin: 0;
	padding: 0;
	height: 100%;
}

body {
	font-family:'Noto Sans JP', sans-serif;
	-webkit-text-size-adjust: none;
	background: #fff;
	color: #333;
	line-height: 1.6;
	overflow-x:visible !important;
}

/*リセット*/
figure {margin: 0;}
dd {margin: 0;}
nav {margin: 0;padding: 0;}

/*table全般の設定*/
table {border-collapse:collapse;}

/*画像全般設定*/
img {border: none;max-width: 100%;height: auto;vertical-align: middle;}

/*videoタグ*/
video {max-width: 100%;}

/*iframeタグ*/
iframe {width: 100%;}

/*ul,olタグ*/
ul, ol {margin-bottom: 30px; margin-left: 1em;}

.marker{background: linear-gradient(transparent 70% , yellow 70%);}

.red {color: red;}

.tx_center {text-align: center; padding: 20px;}

/*リンクテキスト全般の設定
---------------------------------------------------------------------------*/
a {
	color: #003399;
	transition: 0.3s;
}

a:hover {
	opacity: 0.8;
}

/*sectionタグと、詳細ページの共通設定
---------------------------------------------------------------------------*/
section,
main > article {
	padding: 0 5%;
}

/*containerブロック
---------------------------------------------------------------------------*/
#container {
	height: 100%;
	max-width: 1920px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	justify-content: space-between;	/*並びかたの種類*/
}


/*menubarブロック初期設定
---------------------------------------------------------------------------*/
#menubar ul {list-style: none;margin: 0;padding: 0;}

/*メニューを非表示にしておく*/
#menubar {display: none;}

/*開閉用のスタイル*/
#menubar.db {display: block;}
#menubar.dn {display: none;}

/*メニュー１個あたりの設定*/
#menubar a {
	display: block;
	text-decoration: none;
	text-align: center;
	padding: 14px 0;
	color: #333;
	background:#fff;
}

#menubar ul li ul li {
	margin: 0;
}

/*マウスオン時*/
#menubar ul li a:hover {
	opacity: 0.77;
	background: #010066;
	color: #fff;
}


/*大きな端末用のメニュー設定
---------------------------------------------------------------------------*/
/*メニューブロック設定*/
.p #menubar {
}

/*メニュー１個あたりの設定*/
.p #menubar a {
	background: #fff;
}

/*小さな端末用の設定（開閉ブロック）
---------------------------------------------------------------------------*/
/*メニューブロック設定*/
.s #menubar.db {
	position: fixed;overflow: auto;z-index: 100;
	left: 0px;top: 0px;
	width: 100%;
	height: 100%;
	padding: 70px 0;
	background: rgba(0,0,0,0.9);
	color: #000;
	animation: animation1 0.2s both;
	text-align: center;
}

/*メニュー１個あたりの設定*/
.s #menubar.db a {
	display: block;text-decoration: none;
	text-align: center;
	color: #000;
	padding: 20px;
}

/*ドロップダウンメニュー
---------------------------------------------------------------------------*/
/*ドロップダウン非表示*/
#menubar .ddmenu_parent ul {
	display: none;
}

/*カーソルをデフォルト*/
a.ddmenu {
	cursor: default;
}

/*ドロップダウンメニュー矢印アイコン*/
a.ddmenu::before {
	font-family: "Font Awesome 5 Free";
	content: "\f150";
	font-weight: bold;		/*マスト設定*/
	margin-right: 0.5em;
	opacity: 0.6;
}

/*ドロップダウンメニュー全体の設定*/
.ddmenu_parent ul {
	border: 1px solid #ccc;
}

/*ハンバーガーメニュー
---------------------------------------------------------------------------*/
/*開閉用のスタイル*/
#menubar_hdr.db {display: flex;}
#menubar_hdr.dn {display: none;}

/*３本バーを囲むブロック*/
#menubar_hdr {
	position: fixed;z-index: 101;
	cursor: pointer;
	right: 0.5%;
	top: 1px;	
	padding: 16px 14px;	
	width: 52px;	
	height: 52px;
	display: flex;	
	flex-direction: column;			/*３本バー縦並び*/
	justify-content: space-between;	/*並び種類*/
	transform: scale(1.2);
}

/*バー１本あたりの設定*/
#menubar_hdr span {
	display: block;
	transition: 0.3s;	/*アニメーションにかける時間。0.3秒。*/
	border-top: 2px solid #fff;
	box-shadow: 1px 1px 2px #000;
		color: #fff;

}

/*×印が出ている状態の設定。※１本目および２本目のバーの共通設定。*/
#menubar_hdr.ham span:nth-of-type(1),
#menubar_hdr.ham span:nth-of-type(3) {
	transform-origin: center center;
	width: 26px;
}

/*×印が出ている状態の設定。※１本目のバー。*/
#menubar_hdr.ham span:nth-of-type(1){
	transform: rotate(45deg) translate(6px, 7px);	/*回転45°と、X軸Y軸への移動距離の指定*/
}

/*×印が出ている状態の設定。※３本目のバー。*/
#menubar_hdr.ham span:nth-of-type(3){
	transform: rotate(-45deg) translate(6px, -7px);	/*回転-45°と、X軸Y軸への移動距離の指定*/
}

/*×印が出ている状態の設定。※２本目のバー。*/
#menubar_hdr.ham span:nth-of-type(2){
	display: none;	/*２本目非表示*/
}



/* =========================================================
◆759px以下
========================================================= */
@media screen and (max-width: 759.9px) {

/*mainimg*/
#mainimg {
    width: 100%;
    float: left;
  }

#mainimg p {
    position: absolute;
    color: white;
    bottom: 20%;
    left: 3%;
  }

#mainimg img {
    width: 100%;
  }

/*mainブロックの設定*/
main {	
	flex: 1;
	margin: 0;
	padding: 0;
}

/*h2背景文字*/
main h2 {
    position: relative;
    margin: 40px 0px 30px 0px;
    color: #404040;
}

main h2::before {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
    color: #e0eaff;
    font-size: 3em;
    line-height: 1;
    content: attr(data-number);
    pointer-events: none;
} 

main h3 {
	padding: 0;
	margin-bottom: 1em;
	border-bottom: 1px solid #ddd;
	text-align: left;
}

main .box2 {
    display: flex;
    padding:5px;
	margin: 30px auto;
    align-items: stretch;	/*これ入れたらなんとかなる*/
    width: 100%;
    flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
}

main .box2 h3 {
    display: flex;
    justify-content: center;
    align-items: center;
}

main .imgbox2 {
    padding: 30px 30px 30px 30px;
    width:75%;
    align-items:stretch;
	margin: auto;
	display: block;
}	

main p {
	margin: 0 10px 2em;
}
main p + p {
	margin-top: -1em;
}

.main {
    order: 1;	/*表示順(数字が小さい順*/
}

/*sub*/
.sub {
    order: 2;	/*表示順(数字が小さい順*/
	width: 88%;
	margin: 0 auto;
}

/*sub内のh3タグ*/
.sub h3 {
	font-weight: normal;
	font-size: 1em;
	margin: 0;
	border: none;
	background: #010066;
	color: #fff;
	text-align: center;	
}

/*submenu（２カラムのsubメニュー）*/
ul.submenu {
	list-style: none;
	padding: 0;margin: 0;
	margin-bottom: 20px;
	border-top: solid 1px #ccc;
}

/*メニューひとつあたり*/
ul.submenu li {
	display: block;margin: 0;
	border-bottom: solid 1px #ccc;
	padding: 5px 10px;
}

ul.submenu li a {
	text-decoration: none;display: block;
}

.submenu img {
    padding: 5px 5px 5px 5px;
    width:80%;
    align-items:stretch;
	margin: auto;
	display: block;
}

/*マウスオンj時の背景色
ul.submenu li a:hover {
	background: #f0f0f0;
}*/



/*footer*/
#footer {
    padding: 0;
    width: 100%; 
    flex-direction: column;/*flexアイテムを縦並びに変更*/
    }
.footer1{
  background: #101166;
  color: #fff;
  text-align: center;
}

.footer1 li a:hover {
	text-decoration: none;
}
.footer1 a {
	color: #fff;
 	text-decoration: none;
    font-size: 10px;
}
    
.footer1 ul {
	margin: 0;
	padding-top: 10px;
	list-style: none;
}
    
    
.footer2{
  background: #101166;
  color: #fff;
  text-align: center;
  padding: 20px;
}

    
.footer2 ul {
	margin: 0;
	padding-bottom: 5px;
	list-style: none;
    font-size: 10px;
}

.footer06 {
 	color: #fff;
 	background: #fff;
 	padding: 10px 30px;
	font-size: 13px;
	text-align: center;
}
	
.footer06 img{
	height: 3em;
}

/*copyright*/
.copy {padding: 1%;
	text-align: center;
}
}




/* =========================================================
◆760px以上
========================================================= */
@media screen and (min-width: 760px),print {

/*mainimg*/
#mainimg img {
	width: 100%;
  }

#mainimg p {
	position: absolute;/*絶対配置*/
	color: white;/*文字は白に*/
	bottom: 20%;
	left: 3%;
	align-items: stretch;	/*これ入れたらなんとかなる*/
  }

#mainimg img {
	width: 100%;
  }

/*mainブロックの設定*/
main {	
	flex: 1;
	margin: 0;
	padding: 0;
}

/*h2*/
main h2 {
    position: relative;
    margin: 40px 0px 30px 0px;
    color: #404040;
	font-size:35px;
}

main h2::before {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
    color: #e0eaff;
    font-size: 3em;
    line-height: 1;
    content: attr(data-number);
    pointer-events: none;
}
	
main h3 {
	padding: 0;
	margin-bottom: 1em;
	border-bottom: 1px solid #ddd;
	text-align: left;
}

main p {
	margin: 0 20px 2em;
}
main p + p {
	margin-top: -1em;
}

/*2カラム（.mainと.sub）を囲むブロック*/
.c2 {
	display: flex;
	flex-direction: column;	/*縦並び*/
	padding: 2% 5%;
}

/*.mainのsectionのpaddingを一旦リセット*/
.main section {
	padding: 0;
	margin-top: -40px;
}

/*１つ目以外のsectionの上部に空ける余白。section同士の上下間にとる余白*/
.main section:not(:nth-of-type(1)) {
	padding-top: 5%;
}

/*sub内のh3タグ*/
.sub h3 {
	font-weight: normal;
	font-size: 1em;
	margin: 0;
	border: none;
	background: #010066;
	color: #fff;
	text-align: center;
}

/*submenu（２カラムsubメニュー）*/
ul.submenu {
	list-style: none;
	padding: 0;margin: 0;
	margin-bottom: 20px;
	border-top: solid 1px #ccc;
}

/*メニュー１個あたりの設定*/
ul.submenu li {
	display: block;margin: 0;
	border-bottom: solid 1px #ccc;
	padding: 5px 10px;
}

ul.submenu li a {
	text-decoration: none;display: block;
}

.submenu img {
    padding: 5px 5px 5px 5px;
    width:80%;
    align-items:stretch;
	margin: auto;
	display: block;
}


/*マウスオンj時の背景色
ul.submenu li a:hover {
	background: #f0f0f0;
}*/

/*2カラム（.mainと.sub）を囲むブロック*/
.c2 {
    flex-direction: row;			/*子要素を横並び*/
    justify-content: space-between;	/*並び方の種類指定*/
}

/*main）*/
.main {
    width: calc(100% - 250px);
}

/*sub*/
.sub {
    width: 200px;
}

.main {
    order: 2;	/*表示順数字が小さい順*/
}

/*sub*/
.sub {
    order: 1;	/*表示順数字が小さい順*/
}

	
/*footer*/
#footer{
    display: flex;
    width: 100%;
    text-align: center;
    flex-wrap:wrap;
}
.footer1{
	width: 40%;
	background: #101166;
	color: #fff;
	text-align: left;
	padding: 20px;
}

.footer1 li a:hover {
	text-decoration: none;
}
.footer1 a {
	color: #fff;
 	text-decoration: none;
}
    
.footer1 ul {
	margin: 0;
	list-style: none;
    padding: 20px;
    font-size: 13px;
}
    
    
.footer2{
	width: 60%;
	background: #101166;
	color: #fff;
	text-align: left;
	padding: 20px;
}

    
.footer2 ul {
	margin: 0;
	list-style: none;
    font-size: 13px;
    padding: 20px;
}

.footer06 {
 	color: #fff;
 	background: #fff;
 	padding: 10px 30px;
}
	
.footer06 img{
	height: 5em;
}

/*copyright*/
.copy {padding: 1%;
	text-align: center;
    width: 100%;

}

}






/* SEC01 vMid  2カラム
------------------------------------------------------------*/

.vision{
	width: 90%;
	margin: 0 auto;
	padding-bottom: 20px;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
    align-items: stretch;
}





/*btnの設定(問い合わせ)
---------------------------------------------------------------------------*/

p.btn--orange {margin: 0;
	
}

/*ボタンを囲むブロック*/
.btn--orange {
	text-align: center;
}


a.btn--orange {
 	align-items: center;
	color: #fff;
 	background-color: #010066;
	text-decoration: none;
	border: none;
	box-shadow: 2px 2px 5px rgba(0,0,0,0.2);
	letter-spacing: 0.1em;
	transition: 0.3s;		/*hoverまで0.3秒。*/
	padding: 10px 10px;
	margin: 5px auto 30px;
}

a.btn--orange:hover {
    color: #fff;
    background: #0100566;
}

a.btn-c {
    font-size: 13px;
    position: relative;
	justify-content: center;
	align-items: center;
	margin: 30px 10px;
}

a.btn-c i.fa {
    margin-right: 1rem;
	
}


/*cards
---------------------------------------------------------------------------*/
#cards {
    display: flex;
    justify-content: center;
}

.card {
    width: 300px;
    height: 315px;
    border: 1px solid lightgray;
}

.card:nth-child(2) {
    margin-right: 10px;
    margin-left: 10px;
}

.picture img {
    width: 100%;
    height: 100px;
}

.description {
    width: 100%;
    height: 145px;
    padding-right: 12px;
    padding-left: 12px;
    box-sizing: border-box;
}

.description p {
    font-size: 13px;
    color: dimgray;
}

#rounded img {
    border-radius: 50px;
}


/*PAGE TOP（↑）設定
---------------------------------------------------------------------------*/
.pagetop-show {display: block;}

/*ボタンの設定*/
.pagetop a {
	display: block;text-decoration: none;text-align: center;z-index: 99;
	position: fixed;
	right: 20px;
	bottom: 20px;
	color: #fff;
	font-size: 1.5em;
	background: rgba(0,0,0,0.2);
	width: 60px;
	line-height: 60px;
	border-radius: 50%;
}


/*bg1（背景に色がついたタイプ）
---------------------------------------------------------------------------*/
.bg1 {
    background: #010066;
	color: #fff;
}
.bg1 a {
	color: #fff;
}


/*その他
---------------------------------------------------------------------------*/
.clearfix::after {content: "";display: block;clear: both;}
.color-theme, .color-theme a {color: #00b1d4 !important;}
.color-check, .color-check a {color: #f00 !important;}
.c {text-align: center !important;}
.ws {width: 95%;display: block;}
.wl {width: 95%;display: block;}
.mb30 {margin-bottom: 30px !important;}
.mt30 {margin-top: 30px !important;}
.look {display: inline-block;padding: 0px 10px;background: #666; color: #fff; border-radius: 3px;margin: 5px 0; word-break: break-all;}
.look .color-check {color: #ffcc00 !important;}
.small {font-size: 0.6em;}
.pc {display: none;}


/*menubarブロック設定--------------------------------------------------------*/
@media screen and (min-width: 760px) {
/*-------------------------------------------------------------------------*/
/*メニューブロック全体*/
#menubar ul {
    margin: 0;
    display: flex;
    justify-content: space-around;
    line-height: 1.6;
}

/*メニュー１個あたりの設定*/
#menubar ul li {
    flex: 1;
}


/*ドロップダウンメニュー
------------------------------*/
#menubar .ddmenu_parent{
    position: relative;
}

/*ドロップダウンメニューブロック全体*/
#menubar .ddmenu_parent ul {
    position: absolute;
    z-index: 20;
    width: 100%;
}


/*３本バー（ハンバーガー）アイコン設定
------------------------------*/
/*ハンバーガーメニューを非表示にする*/
#menubar_hdr {
    display: none;
}

}



/*「お知らせ」ブロック--------------------------------------------------------*/
@media screen and (min-width: 760px) {
/*-------------------------------------------------------------------------*/

/*日付(dt)設定*/
#new dt {
    width: 14em;
    display: flex;/
    justify-content: space-between;	/*日付とアイコンを端に*/
}

/*日付の横のマーク（共通設定）*/
#new dt span {
    display: inline-block;
    width: 6em;
    background: #999;
    color: #fff;
    font-size: 0.8em;
    text-align: center;
    margin-right: 1em;
    align-self: flex-start;
    line-height: 1.8;
    position: relative;top: 0.4em;
}

/*bg1設定。サンプルテンプレートでは「サービス」と書いてあるマーク*/
#new dt span.icon-bg1 {
    background: #010066;
}

/*記事(dd)設定*/
#new dd {
    width: calc(100% - 14em);	/*「14em」は上の「#new dt」のwidthの値です。*/
}

}


/*listブロック新着情報--------------------------------------------------------*/
@media screen and (min-width: 760px) {
/*-------------------------------------------------------------------------*/

/*全体を囲むブロック*/
.list-container {
    display: flex;
    flex-wrap: wrap;
	/*justify-content: space-between;	並びかたの種類の指定*/
}

/*１個あたりのボックス設定*/
.list {
    flex-direction: column;
    width: 32%;	
    margin-right: 2%;
}

/*３の倍数のボックスへの追加設定*/
.list:nth-of-type(3n) {
    margin-right: 0;
}

/*ボックス内のfigure画像*/
.list figure {
    width: 100%;
    margin-right: 0;
}

/*ボックス内のtextブロック*/
.list .text {
    margin-right: 0;
}

/*ボックス内のh4タグ*/
.list h4 {
    margin: 10px 0;	/*上下、左右への余白*/
}

}


/*--------------?---?------------------*/
@media screen and (max-width: 759.9px) {
/*-------------------------------------*/
.list {
    display: flex; /*flexボックスを使う指定*/
    justify-content: space-between; /*並びかたの種類の指定*/
}

/*ボックス内のfigure画像*/
.list figure {
    width: 50%; /*幅*/
    margin-right: 5%; /*画像の右側に空けるスペース*/
}

/*ボックス内のtextブロック*/
.list .text {
    flex: 1;
    margin-right: 5%;
}

}
/*--------------?---?------------------*/
@media screen and (max-width: 759.9px) {
/*-------------------------------------*/

/*１個あたりのボックス設定*/
.list {
    flex-direction: column;			/*子要素を縦並びにする*/
    width: 100%;			/*幅。３列になります。*/
    margin-right: 2%;	/*右側へのマージン*/
    align-items: stretch;	/*これ入れたらなんとかなる*/
}

}






/*交互box-------------------------------------------------------*/
@media screen and (min-width: 760px) {
/*-------------------------------------------------------------------------*/

.box2 {
    display: flex;
    background: #fff;
	margin: 20px 0px 80px 0px;
}
.box2 .img {
    margin: 0 20px 0 0;
}
.box2:nth-child(even) {
    flex-direction: row-reverse;
}
.box2:nth-child(even) .img {
    margin: 0 0 0 20px;
}

.text-box2{
    width:calc(75%);
}

/* unrelated css */

.imgbox2 {
    width:20%;
    height:auto;
    background: #fff;
    display: flex;
    font-size:36px;
    color:#fff;
    align-items:center;
    justify-content:center;
}

.box2 .btn a {
	display: block;
}

.text-box2 btn_07 {
position: absolute;		
	}
}


/*-------------------------------------*/
@media screen and (max-width: 759.9px) {
/*-------------------------------------*/



}




/*テーブル-------------------------------------------------------------------*/
@media screen and (min-width: 760px) {
/*-------------------------------------------------------------------------*/
.ta1 caption {
	font-weight: bold;
	padding: 10px 5px;
	background: #eee;
	margin-bottom: 60px;
}

/*ta1テーブルブロック設定*/
.ta1 {
	border-top: 1px solid #ccc;
	width: 100%;
	margin: 0 auto 30px;
}

/*tr（１行分）タグ設定*/
.ta1 tr {
	border-bottom: 1px solid #ccc;
}

/*th（左側）、td（右側）の共通設定*/
.ta1 th, .ta1 td {
	padding: 30px 5px;
	word-break: break-all;
}

/*th（左側）のみの設定*/
.ta1 th {
	width: 30%;
	text-align: left;
}

.ta1 ul {
	padding: 0;
	margin: 0;
}

.ta1 ul li {
	list-style: none;
    text-indent: -1em;
    margin-left: 1em;
    text-align: left;
    line-height: 1.6;
    padding-bottom: 10px;
}

.ta1 ul li:before {
	content: '●';
}

.ta1 ol {
	list-style-type: none;
}

}



/*-------------------------------------*/
@media screen and (max-width: 759.9px) {
/*-------------------------------------*/
/*ta1テーブルブロック設定*/
.ta1 {
	border-top: 1px solid #ccc;
	width: 100%;
	margin: 0 auto 30px;
	border-bottom: 1px solid #ccc;
}


/*テーブル１行目に入った見出し部分（※caption）*/
.ta1 caption {
    padding: 5px 15px;

}

/*th（左側）、td（右側）の共通設定*/
.ta1 th, .ta1 td {
    padding: 20px 15px;
	border-top: 1px solid #ccc;

}

/*th（左側）のみの設定*/
.ta1 th {
    width: 20%;		/*幅*/
}

.ta1 ul {
    padding: 0;
    margin: 0;
}

.ta1 ul li {
    list-style: none;
    text-indent: -1em;
    margin-left: 1em;
    text-align: left;
    line-height: 1.6;
    padding-bottom: 10px;
}

.ta1 ul li:before {
    content: '●';
}

.ta1 ol {
    list-style-type: none;
}

}


/*item---------------------------------------------------------------------*/
@media screen and (min-width: 760px) {
/*-------------------------------------------------------------------------*/
/*ボックスの設定*/
.item {
    position: relative;
    overflow: hidden;
    display: flex;
/*align-items: center;*/
    margin-bottom: 40px;
}

/*ボックス内のh4（見出し）タグ*/
.item h4 {
    margin-bottom: 10px;
    font-size: 120%;
    margin: 0;
}
/*ボックス内のp（段落）タグ*/
.item p {
    padding: 0 0 0 10px;
    margin: 0;
	font-size: 16px;
	line-height: 2em
}
/*ボックス内のfigure画像*/
.item figure {
    float: left;
    width: 30%;
}
/*「class="text"」を指定したブロック。テキストブロック。*/
.item .text {
    float: right;
    width: 67%;
    margin-left: 3%;
}

.item .btn a {
    float: left;
    width: 50%;
}

}

/*-------------------------------------*/
@media screen and (max-width: 759.9px) {
/*-------------------------------------*/
/*ボックスの設定*/
.item {
	/*align-items: center;*/
    margin-bottom: 6%;
	display: block;
}

/*ボックス内のh4（見出し）タグ*/
.item h4 {
    margin-bottom: 10px;
    font-size: 110%;
    margin: 0;
    padding: 0;
}

/*ボックス内のp（段落）タグ*/
.item p {
    padding: 0;	
    margin: 0;
}

/*ボックス内のfigure画像*/
.item figure {
    width: 100%;
}

/*「class="text"」を指定したブロック。テキストブロック。*/
.item .text {
    width: 100%;
	font-size: 1em;
}

.item .btn a {
    width: 100%;
}
	
}


/*list2横並び(mapと横並び)-------------------------------------------------*/
@media screen and (min-width: 760px) {
/*-------------------------------------------------------------------------*/
*, *:before, *:after {
	box-sizing: border-box;
}

.itemList2 {
    width: 100%;
    display: flex;
    display: -ms-flexbox; 
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
}

.itemList2 > div {
    width: 70%;
    padding: 20px 10px 0;
    text-align: center;
}

.itemList2 > div img {
    width: 50%;
}

.itemList2 > div dd {
    margin: 0;
    text-align: left;
}

}

/*-------------------------------------*/
@media screen and (max-width: 759.9px) {
/*-------------------------------------*/
*, *:before, *:after {
    box-sizing: border-box;
}

.itemList2 {
    width: 100%;
    display: flex;
    display: -ms-flexbox; /* IE10 */
    flex-wrap: wrap;
    -ms-flex-wrap: wrap; /* IE10 */
    align-items: stretch; 
}

}







/*-------------------------------------------------------------------------*/
@media screen and (min-width: 760px) {
/*-------------------------------------------------------------------------*/
.ti_format001 {
    background: #010066;
    border-top: none 1px #ccc;
    border-right: none 1px #ccc;
    border-left: none 1px #ccc;
    color: #fff;
    padding: 10px;
    font-size: 110%;
    font-weight: bold;
}

.format001 {
    width: 100%;
    border: 1px none #ccc;
    background: #fff;
}

.format001 dl {
    border-bottom: 1px none #ccc;
    margin: 0;
    padding:10px 0;
}

.format001 dt {
    clear: left;
    float: left;
    width: 110px;
    padding: 10px;
    font-weight: bold;	
}

.format001 dd {
    margin-left: 110px;
    border-left: 1px solid #ccc;
    padding: 10px;
    background: #fff;
}

.format001 dd img {
    display: block;
    margin-top: 5px;
}

.format001 dl:last-child{
    border: none;
}

.asframe{
    width: 100%;
    height: 50px;
    background: #fcfcfc;
    border: 1px solid #ddd;
    border-radius: 6px;
 }
	
.aswl{
    width: 100%;display: block;
    height: 80px;
    background: #F4F6F9;
    border: 1px solid #C0C0C0;
    border-radius: 3px 3px 3px 3px;
}
	
.select1{
    width: 150px;
	margin-left: 10px;
    border: 1px solid #ddd;
    border-radius: 6px;
    padding-left: 1em;
    padding-right: 1em;
    height: 48px;
    flex: 1;
    max-width: 410px;
    background: #fcfcfc;
    font-size: 14px;
}

}

/*-------------------------------------*/
@media screen and (max-width: 759.9px) {
/*-------------------------------------*/

.asframe{
    margin-left: 25px;
    margin-top: 5px;
    margin-bottom: 20px;
    height: 40px;
    flex: inherit;
    font-size: 15px;
	border: 1px solid #ddd;
    border-radius: 6px;
    padding-left: 1em;
    padding-right: 1em;
    width: 100%;
    max-width: 410px;
    background: #fcfcfc;
}

}


@media screen and (max-width: 759.9px) {
.Form {
    margin-top: 80px;
    margin-left: auto;
    margin-right: auto;
    max-width: auto;
}

}

.Form-Item {
    border-bottom: 1px solid #ddd;
    padding-top: 24px;
    padding-bottom: 24px;
    width: 100%;
    display: flex;
    align-items: center;
}

@media screen and (max-width: 759.9px) {
.Form-Item {
    padding-left: 14px;
    padding-right: 14px;
    padding-top: 16px;
    padding-bottom: 16px;
    flex-wrap: wrap;
}
}

.Form-Item:nth-child(5) {
    border-bottom: 1px none #ddd;
}
.Form-Item-Label {
    width: 100%;
    max-width: 248px;
    letter-spacing: 0.05em;
    font-weight: bold;
    font-size: 16px;
}

@media screen and (max-width: 759.9px) {
.Form-Item-Label {
    max-width: inherit;
    display: flex;
    align-items: center;
    font-size: 15px;
}

}

.Form-Item-Label.isMsg {
    margin-top: 8px;
    margin-bottom: auto;
}

@media screen and (max-width: 759.9px) {
.Form-Item-Label.isMsg {
    margin-top: 0;
}

}

.Form-Item-Label-Required {
    border-radius: 6px;
    margin-right: 8px;
    padding-top: 8px;
    padding-bottom: 8px;
    width: 38px;
    display: inline-block;
    text-align: center;
    background: red;
    color: #fff;
    font-size: 11px;
}

@media screen and (max-width: 759.9px) {
.Form-Item-Label-Required {
    border-radius: 4px;
    padding-top: 4px;
    padding-bottom: 4px;
    width: 32px;
    font-size: 10px;
}

}

.Form-Item-Label-Requiblue2 {
    border-radius: 6px;
    margin-right: 8px;
    padding-top: 8px;
    padding-bottom: 8px;
    width: 38px;
    display: inline-block;
    text-align: center;
    background: #A1A3A6;
    color: #fff;
    font-size: 11px;
}

@media screen and (max-width: 759.9px) {
.Form-Item-Label-Requiblue2 {
    border-radius: 4px;
    padding-top: 4px;
    padding-bottom: 4px;
    width: 32px;
    font-size: 10px;
}

}


.Form-Item-Input {
    border: 1px solid #ddd;
    border-radius: 6px;
    margin-left: 10px;
    padding-left: 1em;
    padding-right: 1em;
    height: 48px;
    flex: 1;
    width: 100%;
    max-width: 410px;
    background: #fcfcfc;
    font-size: 14px;
	float: left;
}
.Form-Item2{
		float: none;
	flex:auto;
}

@media screen and (max-width: 759.9px) {
.Form-Item-Input {
    margin-left: 25px;
    margin-top: 5px;
    margin-bottom: 20px;
    height: 40px;
    flex: inherit;
    font-size: 15px;
}

}

.Form-Item-Textarea {
    border: 1px solid #ddd;
    border-radius: 6px;
    margin-left: 10px;
    padding-left: 1em;
    padding-right: 1em;
    height: 150px;
    flex: 1;
    width: 100%;
    max-width: 410px;
    background: #fcfcfc;
    font-size: 14px;
}
.Form-Item-Textarea2 {
    border: 1px solid #ddd;
    border-radius: 6px;
    margin-left: 10px;
    padding-left: 1em;
    padding-right: 1em;
    height: 250px;
    flex: 1;
    width: 100%;
    max-width: 410px;
    background: #fcfcfc;
    font-size: 14px;
}

@media screen and (max-width: 759.9px) {
.Form-Item-Textarea {
    margin-top: 5px;
    margin-bottom: 20px;
    margin-left: 25px;
    height: 150px;
    flex: inherit;
    font-size: 15px;
}

.Form-Item-Textarea2 {
    margin-top: 5px;
    margin-bottom: 20px;
    margin-left: 25px;
    height: 250px;
    flex: inherit;
    font-size: 15px;
}
}


.Form-ItemA {
	float: left;
    max-width: 248px;
    letter-spacing: 0.05em;
    font-weight: bold;
    font-size: 16px;
}
.Form-ItemB {
	padding: 0 0 0 10px;
	border-radius: 6px;
    margin-left: 10px;
    padding-left: 1em;
    padding-right: 1em;
    height: 48px;
    flex: 1;
    width: 100%;
    max-width: 410px;
    background: #fcfcfc;
    font-size: 14px;
	float: left;
}
.Form-ItemC {
	clear: both;
	display: block;
	width: auto;
	text-align: center;
	font-size: 9px;
}

.Form-Btn {
    border-radius: 6px;
    margin-top: 32px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 20px;
    padding-bottom: 20px;
    width: 280px;
    display: block;
    letter-spacing: 0.05em;
    background: #5bc8ac;
    color: #fff;
    font-weight: bold;
    font-size: 18px;
}

@media screen and (max-width: 759.9px) {
.Form-Btn {
    margin-top: 24px;
    padding-top: 8px;
    padding-bottom: 8px;
    width: 160px;
    font-size: 16px;
}	
}

.Form-Itembtm{
	width: auto;
	text-align: center;
	margin: 2em;
}
.Form-Itembtm023{
	width: 450px;
	height: 60px;
    color: #fff;
	font-size: 20px;
    border: 2px solid #fff;
    border-radius: 0.5em;
    background: #101166;
    box-shadow: 0 8px 15px rgba(0, 0, 0, .1);
}

.Form-Itembtm023:hover {
    -webkit-transform: translate(0, -2px);
    transform: translate(0, -2px);
    color: #fff;
    -webkit-box-shadow: 0 8px 15px rgba(0, 0, 0, .2);
    box-shadow: 0 8px 15px rgba(0, 0, 0, .2);
}


.Form-Itembtm023 a {
    text-decoration: none;
	color: #fff;
}

@media screen and (max-width: 759.9px) {
.Form-Itembtm023{
	width: 75%;
	height: 4em;
	font-size: 0.8em;
    color: #fff;
    border: 2px solid #fff;
    border-radius: 0.5em;
    background: #101166;
    margin:auto;
	padding: 0 2em;
    box-shadow: 0 8px 15px rgba(0, 0, 0, .1);
	}

.Form-Itembtm023 a {
    text-decoration: none;
	color: #fff;
}
}











.Form-Item-tel{
    position: relative;
    padding: 1rem;
	
    outline-offset: 5px;
	margin-bottom: 50px;
	
	
	
    padding-top: 24px;
    padding-bottom: 24px;
    width: 100%;
    display: flex;
    align-items: center;
	
}
.blockteld {
	float: left;
	font-size: 20px;
	padding-top: 24px;
    padding-bottom: 5px;
    max-width: 248px;
	
}
.blocktele {
	float: left;
	width: 60%;
	padding: 24px 0 5px 0;
    padding-bottom: 24px;
	padding-left:  5em;;
	max-width: 410px;


}
.Form-Item-Input-e{
    border: 1px solid #ddd;
    border-radius: 6px;
    margin-left: 18px;
    padding-left: 1em;
    padding-right: 1em;
    height: 48px;
    flex: 1;
    width: 100%;
    max-width: 410px;
    background: #fcfcfc;
    font-size: 14px;
	float: left;
}

.Form-Item2{
	float: none;
	flex:auto;
}

.blocktelc {
	clear: both;
	display: block;
	width: auto;
	padding-bottom: 20px;
	padding-left: 40px;
	text-align: left;
	font-size: 0.8em;
	border-bottom: 1px solid #ddd;

}




	
	


/*-------------------------------------*/
@media screen and (max-width: 759.9px) {
/*-------------------------------------*/
.Form-Item-tel {
    position: relative;
    padding: 1rem;
    outline: 2px solid #008bbb;
    outline-offset: 5px;
    background:
        linear-gradient(-45deg, transparent 0 20px, #fff 20px calc(100% - 20px), transparent calc(100% - 20px)),
        repeating-linear-gradient(-45deg, #008bbb 0 2px, #fff 2px 6px);
	margin-bottom: 50px;
	    display: flex;
  flex-wrap:wrap; /*折り返し*/

}
	

.blockteld .blocktelc  {
	clear: both;
	padding: auto;
	width: auto; margin: 0 50px;
	text-align: center;
		    display: flex;
  flex-direction:column;

}
	
.Form-Item-Input-e{
    margin-left: 5px;
    margin-top: 5px;
    margin-bottom: 5px;
    height: 40px;
    flex: inherit;
    font-size: 15px;
		    display: flex;
  flex-direction:column;

}

.blocktelc {
	clear: both;
	width: auto;
	padding-bottom: 10px;
	text-align: center;	    display: flex;
  flex-direction:column;

}
}






@media screen and (max-width: 759.9px) {
.radio1{
    margin-top: 5px;
    margin-bottom: 20px;
    margin-left: 25px;
    flex: inherit;
    font-size: 15px;	
}
}


.search-box label {
	cursor: pointer;
	display: inline-block;
	margin-right: 10px;
	line-height: 16px;
	padding: 0.5em;
}
.search-box input[type="radio"] {
	width: 16px;
	height: 16px;
	margin: -2px 5px 0 0;
	padding: 0;
	box-sizing: border-box;
	vertical-align: middle;
}
.search-box input[type="checkbox"] {
	width: 16px;
	height: 16px;
	margin: -2px 5px 0 0;
	padding: 0;
	box-sizing: border-box;
	vertical-align: middle;
}
.cat_image_all {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 680px;
	margin: 3em auto 0;
}
.cat_image {
	width: 48%;
	max-width: 320px;
	margin: 0 0 2em;
}
.cat_image.is-hide {
	display: none;
}
.cat_image a {
	display: block;
	color: #444;
}
.cat_image a:hover {
	text-decoration: underline;
}

/*個人情報同意---------------------------------------------------------------*/
@media screen and (min-width: 760px) {
/*-------------------------------------------------------------------------*/
input[type="submit"] {
    border-radius: 6px;
    margin-top: 32px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 20px;
    padding-bottom: 20px;
    width: 400px;
    display: block;
    letter-spacing: 0.05em;
    background: #010066;
    color: #fff;
    font-weight: bold;
    font-size: 16px;
}
/*個人情報同意スクロール
------------*/
	

	
/* スクロールバー確認の要素 */
.scrollbar {
    width: 80%;
    height: 200px;
    overflow: scroll;
    border: 0.5px solid #C0C0C0;	/*線の幅、線種、色*/
    margin: auto;
    background: #f4f4f4;
}
.scrollbar p{
		text-align: center;
	}
 
/* スクロールの幅の設定 */
.scrollbar::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}
 
/* スクロールの背景の設定 */
.scrollbar::-webkit-scrollbar-track {
    border-radius: 5px;
    background: rgba(110, 108, 108, 0.2);
}
 
/* ドラックできるスクロール部の設定 */
.scrollbar::-webkit-scrollbar-thumb {
    border-radius: 5px;
    background: #010066;
}


.box1 {
    padding: 0.5em 1em;
    margin: 2em auto;
    font-weight: bold;
    border: solid 1px #000000;
	max-width: 600px;
	text-align: center;
}
.box1 p {
    margin: 1em; 
    padding: 0;
	text-align: center;
}
}


/*-------------------------------------*/
@media screen and (max-width: 759.9px) {
/*-------------------------------------*/
input[type="submit"] {
    border-radius: 6px;
    margin-top: 30px;
	margin-bottom: 50px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 20px;
    padding-bottom: 20px;
    width: 200px;
    display: block;
    letter-spacing: 0.05em;
    background: #010066;
    color: #fff;
    font-weight: bold;
    font-size: 0.7em;
}
	/* スクロールバー確認の要素 */
.scrollbar {
    width: 90%;
	margin: auto;
    height: 200px;
    overflow: scroll;
    border: 0.5px solid #C0C0C0;	/*線の幅、線種、色*/
    text-align: center;
	background-color: #f4f4f4
}
 
/* スクロールの幅の設定 */
.scrollbar::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}
 
/* スクロールの背景の設定 */
.scrollbar::-webkit-scrollbar-track {
    border-radius: 5px;
    background: rgba(110, 108, 108, 0.2);
}
 
/* ドラックできるスクロール部の設定 */
.scrollbar::-webkit-scrollbar-thumb {
    border-radius: 5px;
    background: #010066;
}

.select1{
    flex: inherit;
    border: 1px solid #ddd;
	margin-left: 25px;
    margin-top: 5px;
    margin-bottom: 20px;
    height: 40px;
    font-size: 15px;
    border-radius: 6px;
    padding-left: 1em;
    padding-right: 1em;
    width: 100%;
    max-width: 410px;
    background: #fcfcfc;
}
.box1 {
    padding: 0.5em 1em;
    margin: 2em auto;
    font-weight: bold;
    border: solid 1px #000000;
	text-align: center;
}
.box1 p {
    margin: 1em; 
    padding: 0;
	text-align: center;
}
}

/*カルーセル-----------------------------------------------------------------*/
@media screen and (min-width: 760px) {
/*-------------------------------------------------------------------------*/
.slider {/*横幅94%で左右に余白を持たせて中央寄せ*/
    width:94%;
    margin:0 auto;
	margin-bottom: 6em;
}

.slider img {
    width:40vw;/*スライダー内の画像を60vwにしてレスポンシブ化*/
    height:auto;
}

.slider .slick-slide {
	transform: scale(0.8);/*左右の画像のサイズを80%に*/
	transition: all .5s;/*拡大や透過のアニメーションを0.5秒で行う*/
	opacity: 0.5;/*透過50%*/
}

.slider .slick-slide.slick-center{
	transform: scale(1);/*中央の画像のサイズだけ等倍に*/
	opacity: 1;/*透過なし*/
}


/*矢印の設定*/

/*戻る、次へ矢印の位置*/
.slick-prev, 
.slick-next {
    position: absolute;/*絶対配置にする*/
    top: 42%;
    cursor: pointer;/*マウスカーソルを指マークに*/
    outline: none;/*クリックをしたら出てくる枠線を消す*/
    border-top: 2px solid #666;/*矢印の色*/
    border-right: 2px solid #666;/*矢印の色*/
    height: 15px;
    width: 15px;
}

.slick-prev {/*戻る矢印の位置と形状*/
    left: -1.5%;
    transform: rotate(-135deg);
}

.slick-next {/*次へ矢印の位置と形状*/
    right: -1.5%;
    transform: rotate(45deg);
}

/*ドットナビゲーションの設定*/

.slick-dots {
    text-align:center;
	margin:20px 0 0 0;
}

.slick-dots li {
    display:inline-block;
	margin:0 5px;
}

.slick-dots button {
    color: transparent;
    outline: none;
    width:8px;/*ドットボタンのサイズ*/
    height:8px;/*ドットボタンのサイズ*/
    display:block;
    border-radius:50%;
    background:#ccc;/*ドットボタンの色*/
}

.slick-dots .slick-active button{
    background:#333;/*ドットボタンの現在地表示の色*/
}

}


/*btn07--------------------------------------------------------------------*/
@media screen and (min-width: 760px) {
/*-------------------------------------------------------------------------*/
.btn_07 {
align-items: flex-end
	}
	
a.btn_07 {
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	width: 200px;
    margin:0 30px 0 auto;
	padding: 5px 5px;
	font-weight: bold;
	font-size: 16px;
	color: #010066;
	border-bottom: 2px solid #010066;
	border-radius: 100vh;
	box-shadow: 0 2px 7px rgba(0, 0, 0, .3);
	-webkit-box-shadow: 0 2px 7px rgba(0, 0, 0, .3);
	transition: 0.5s;
}
a.btn_07:hover {
	color: #fff;
	background: #010066;
	border-bottom: 2px solid #fff;
	transform: translateY(3px);
}

}


/*-------------------------------------*/
@media screen and (max-width: 759.9px) {
/*-------------------------------------*/
a.btn_07 {
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	width: 65%;
	padding: 8px 5px;
	font-weight: bold;
	font-size: 16px;
	color: #010066;
	border-bottom: 2px solid #010066;
	border-radius: 100vh;
	box-shadow: 0 2px 7px rgba(0, 0, 0, .3);
	background: #fff;
	display: flex;
	justify-content: center;
	align-items: center;	margin: 30px auto;
	}	

}



/*プライバシーマーク----------------------------------------------------------*/
@media screen and (min-width: 760px) {
/*-------------------------------------------------------------------------*/
.privacy {
	margin: 30px 20px;
}

.privacy ol{
	padding: 5px;
}
	
.privacy li{
	padding: 10px 20px;
		margin: 40px;
}

.privacy_right {
    text-align: right;
}

.privacy_right p{
	padding: 20px;
}

}


/*問い合わせボタン----------------------------------------------------------*/
@media screen and (min-width: 760px) {
/*-------------------------------------------------------------------------*/

.cta_btn05 {
  font-weight: bold; /* 文字の太さ */
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1em 2em 1em calc(5em - 15px);
  transition: 0.3s;
  text-decoration: none;
  color: #fff; /* 文字色 */
  border-radius: 0.5rem;
  background: #45B173; /* 背景色 */
  box-shadow: 0 5px 0 #19934e;
  margin-left: 10px;
}

.cta_btn05 p {
  margin: 0;
}

.cta_btn05 .cta_btn05_copy {
  position: absolute;
  bottom: 0.5em;
  left: -10px;
  display: inline-block;
  width: 5em;
  height: 5em;
  line-height: 5em;
  text-align: center;
  color: #45B173;
  font-size: 80%;
  font-weight: bold;
  background: #fff;
  border: 3px solid #45B173;
  border-radius: 50%;
  box-sizing: border-box;
  transform: rotate(-10deg);
}

.cta_btn05 .cta_btn05_copy::before {
  position: absolute;
  content: "";
  bottom: -5px;
  right: -10px;
  border: 9px solid transparent;
  border-left: 15px solid #FFF;
  z-index: 0;
  transform: rotate(45deg);
}

/* マウスオーバーした際のデザイン */
.cta_btn05:hover {
  transform: translate(0, 3px);
  background: #45B173; /* 背景色 */
  box-shadow: 0 2px 0 #19934e;
}

}


/*-------------------------------------*/
@media screen and (max-width: 759.9px) {
/*-------------------------------------*/
.cta_btn05 {
  font-weight: bold; /* 文字の太さ */
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1em 2em 1em calc(5em - 15px);
  transition: 0.3s;
  text-decoration: none;
  color: #fff; /* 文字色 */
  border-radius: 0.5rem;
  background: #010066; /* 背景色 */
  box-shadow: 0 5px 0 #19934e;
  margin-left: 10px;
		justify-content: center;
	align-items: center;
	margin: 30px 10px;
}

.cta_btn05 p {
  margin: 0;
}

.cta_btn05 .cta_btn05_copy {
  position: absolute;
  bottom: 0.5em;
  left: -10px;
  display: inline-block;
  width: 5em;
  height: 5em;
  line-height: 5em;
  text-align: center;
  color: #45B173;
  font-size: 80%;
  font-weight: bold;
  background: #fff;
  border: 3px solid #45B173;
  border-radius: 50%;
  box-sizing: border-box;
  transform: rotate(-10deg);
	
}
	
}


/*ブロック--------------------------------------------------------------------*/
@media screen and (min-width: 760px) {
/*-------------------------------------------------------------------------*/
.block{
    position: relative;
    padding: 1rem;
    outline: 2px solid #008bbb;
    outline-offset: 5px;
    background:
        linear-gradient(-45deg, transparent 0 20px, #fff 20px calc(100% - 20px), transparent calc(100% - 20px)),
        repeating-linear-gradient(-45deg, #008bbb 0 2px, #fff 2px 6px);
	margin-bottom: 50px;
}

.blocka {
	float: left;
	width: 30%;
}
.blockb {
	float: left;
	width: 68%;
	padding: 0 0 0 10px;
	font-size: 20px;
}
.blockc {
	clear: both;
	display: block;
	width: auto;
	padding: 20px;
	text-align: center;
}
.blockc img{
	padding-right: 30px;
	height: 5em;
}
	
.blockd {
	float: left;
	width: 50%;
	padding: 5px;
	font-size: 20px;

}
.blocke {
	float: left;
	width: 45%;
	padding: 0 0 10px 0;
	font-size: 20px;
}
.pcnone2 {
	font-size: 14px;	
}

.pcnone {
	font-size: 14px;
	padding-bottom: 7px;
}

.balloon-009 {
	padding: 10px;
    display: flex;
    justify-content: center;
    align-items: start;
    gap: 0 22px;
}

.balloon-009 img {
    max-width: 70px;
    height: 100%;
    border: 3px solid #e6edf3;
    border-radius: 50%;
}

.balloon-009 p {
    position: relative;
    max-width: 100%;
    margin: 3px 0 0;
    padding: .8em 1em;
    border-radius: 5px;
    background-color: #e0efff;
    color: #333333;
	font-size: 14px;
}

.balloon-009 p::before {
    position: absolute;
    left: -15px;
    width: 15px;
    height: 30px;
    background-color: #e0efff;
    clip-path: polygon(0 50%, 100% 0, 100% 100%);
    content: '';
}

}



/*-------------------------------------*/
@media screen and (max-width: 759.9px) {
/*-------------------------------------*/
.block {
    position: relative;
    padding: 1rem;
    outline: 2px solid #008bbb;
    outline-offset: 5px;
    background:
        linear-gradient(-45deg, transparent 0 20px, #fff 20px calc(100% - 20px), transparent calc(100% - 20px)),
        repeating-linear-gradient(-45deg, #008bbb 0 2px, #fff 2px 6px);
	margin-bottom: 50px;
}


.block .photo img {
	width: 60%;
	height: auto;
    margin: auto 20%;
}

.block .detail {
	width: 100%;
    font-size: 123.1%;
	line-height: 1.5;
}

.block .detail span {
    font-size: 110%;
	font-weight: bold;
   color: #0099ff;
}
.block .detail .Btn02  {
	color: #fff;
	width: 100%;
	margin: 20px auto 5px;
	position: relative;
	box-sizing: border-box;
	text-align: center;
}

.block .detail .Btn02 a {
	color: #fff;
	padding: 10px 50px;
	background: #0099ff;
	border-radius: 30px;
}

.block .detail .Btn02 a:hover {
	opacity: 0.8;
}

.block .detail .Btn02 span {
	font-size: 75%;
	font-weight: normal;
}

.block .detail .Btn02::after {
	content: "＞";
	position: absolute;
	top: 50%;
	left: 30px;
	transform: translateY(-50%);
}

.block .detail ul.guideList {
	padding: 0;
	margin: 0;
}

.block .detail ul.guideList li {
	list-style: none;
	padding-bottom: 8px;
	text-indent: -1em;
    margin-left: 1em;
    text-align: left;
}

.block .detail ul.guideList li:before {
	content: '●';
}

.block .detail ul.guideList li.kome {
	list-style: none;
	line-height: 1.4;
	padding-bottom: 8px;
	text-indent: -1em;
    margin-left: 1em;
}

.block .detail ul.guideList li.kome:before {
	content: '※';
}
	

.blocka .blockb .blockc .blockd {
	clear: both;
	padding: auto;
	display: block;
	width: auto; margin: 0 50px;
	text-align: center;
}

.blockc {
	clear: both;
	width: auto;
	padding-bottom: 10px;
	text-align: center;
}
.blockc img {
	padding-right: 5px;
	height: 3em;
}

.pcnone {
	padding: 0 0 20px 10px;
	font-size: 13px;
}

.pcnone2{
	padding: 0 0 20px 10px;
	font-size: 13px;
}
}

/*ボタン--------------------------------------------------------------------*/
@media screen and (min-width: 760px) {
/*-------------------------------------------------------------------------*/
.guidepic{
	display: block;
	margin-left: auto;
	margin-right: auto;
}
}
/*ボタン--------------------------------------------------------------------*/
@media screen and (min-width: 760px) {
/*-------------------------------------------------------------------------*/
.button-022 {
	width: 450px;
	height: 60px;
    color: #fff;
	font-size: 20px;
    border: 2px solid #fff;
    border-radius: 0;
    background-image: -webkit-gradient(linear, left top, right top, from(#E15A28), to(#fee140));
    background-image: -webkit-linear-gradient(left, #fa709a 0%, #E15A28 100%);
    background-image: linear-gradient(to right, #fa709a 0%, #E15A28 100%);
    -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .1);
    box-shadow: 0 5px 10px rgba(0, 0, 0, .1);
}

.button-022:hover {
    -webkit-transform: translate(0, -2px);
    transform: translate(0, -2px);
    color: #fff;
    -webkit-box-shadow: 0 8px 15px rgba(0, 0, 0, .2);
    box-shadow: 0 8px 15px rgba(0, 0, 0, .2);
}


.button-022 a {
    text-decoration: none;
	color: #fff;
}

.button-062 {
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 250px;
    margin: 0 auto;
    padding: .9em 2em;
    border: none;
    border-radius: 5px;
    background-color: #101166;
    color: #fff;
    font-weight: 600;
    font-size: 1em;
}

.button-062:hover {
    background-color: #101166;
}

.button-062::before {
    width: 1em;
    height: 1em;
    margin-right: 10px;
    background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M15.6%208.4V1.2H8.4v7.198h-6l9.6%209.6%209.6-9.6h-6zM0%2020.4h24v2.4H0v-2.4z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E') no-repeat center;
    content: '';
}

.button-062 a {
    text-decoration: none;
	color: #fff;
}

}

.cta_btn09 {
	font-weight: bold; /* 文字の太さ */
	text-align: center;
	letter-spacing: 0.1em;
	align-items: center;
	display: flex;
	justify-content: center;
	gap: 20px;
	flex-wrap: wrap;
	margin: 3em 0;
	font-size: 14px;
}

.cta_btn09-contact , .cta_btn09-tel {
	color: #fff; /* 文字色 */
	position: relative;
	display: inline-block;
	text-decoration: none;
	padding: 1em 1em 1em 60px;
	border-radius: 100vh;
	width: 100%; /* ボタン幅 */
	max-width: 350px; /* 最低ボタン幅 */
	transition: 0.3s;
	margin-bottom: 2em;

}

.cta_btn09-contact {
	background: #F88400; /* お問い合わせボタン色 */
}

.cta_btn09-tel {
	background: #4D9BC1; /* 電話ボタン色 */
}

.cta_btn09-contact::before,
.cta_btn09-tel::before {
	content: '';
	position: absolute;
	left: 30px;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	background-repeat: no-repeat;
	background-size: cover;
}
.cta_btn09-contact::before {
	width: 50px;
	height: 41px;
	background-image: url(https://find-a.jp/seotimes/wp-content/uploads/mail.png); /* メールアイコン */
}

.cta_btn09-tel::before {
	width: 40px;
	height: 40px;
	background-image: url(https://find-a.jp/seotimes/wp-content/uploads/cta-phone.png); /* 電話アイコン */
}

.cta_btn09 .copy_txt {
	line-height: 1;
	display: inline-block;
	padding: 0.2em 1.5em;
	letter-spacing: 0;
	background: #fff; /* 下文字背景色 */
	font-size: 90%; /* 下文字サイズ */
	border-radius: 5px;
}

.cta_btn09-contact .copy_txt {
	color: #F88400; /* 下文字色 */
}

.cta_btn09-tel .copy_txt {
	color: #4D9BC1; /* 下文字色 */
}

.cta_btn09 img {
    width: 1em;
    margin-right: 0.5em;
}

/* マウスオーバーした際のデザイン */
.cta_btn09-contact:hover,
.cta_btn09-tel:hover {
	transform: scale(1.05);
}


/*-------------------------------------*/
@media screen and (max-width: 759.9px) {
/*-------------------------------------*/
.button-022 {
	width: 85%;
	height: 3em;
	font-size: 0.8em;
    color: #fff;
    border: 2px solid #fff;
    border-radius: 0;
    background-image: -webkit-gradient(linear, left top, right top, from(#E15A28), to(#fee140));
    background-image: -webkit-linear-gradient(left, #fa709a 0%, #E15A28 100%);
    background-image: linear-gradient(to right, #fa709a 0%, #E15A28 100%);
    -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .1);
    box-shadow: 0 5px 10px rgba(0, 0, 0, .1);
    margin:auto;
	padding: 0 2em;
	}

.button-022 a {
    text-decoration: none;
	color: #fff;
}

.button-062 {
	width: 85%;
	height: 4em;
	font-size: 0.5em;
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 250px;
    padding: .9em 2em;
    border: none;
    border-radius: 5px;
    background-color: #1a4472;
    color: #fff;
	margin: 0 auto;
	margin-bottom: 2em;
	text-align: center;
}

.button-062::before {
    width: 1em;
    height: 1em;
    margin-right: 10px;
    background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M15.6%208.4V1.2H8.4v7.198h-6l9.6%209.6%209.6-9.6h-6zM0%2020.4h24v2.4H0v-2.4z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E') no-repeat center;
    content: '';
}

.button-062 a {
    text-decoration: none;
	color: #fff;
}

.button-032 {
	width: 55%;
	height: 4em;
	font-size: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 250px;
    padding: .9em 2em;
    border: none;
    border-radius: 5px;
    background-color: #101166;
    color: #fff;
	margin: 0 auto;
	margin-bottom: 2em;
	text-align: center;
}

.button-032::after {
    width: .9em;
    height: .9em;
    margin-left: 10px;
    background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%23fff%22%3E%3Cpath%20d%3D%22M20.2%2015h-1.5c-.4%200-.8.3-.8.8V21H3V6h6.8c.4%200%20.8-.3.8-.8V3.8c0-.4-.3-.8-.8-.8H2.2C1%203%200%204%200%205.2v16.5C0%2023%201%2024%202.2%2024h16.5c1.2%200%202.2-1%202.2-2.2v-6c.1-.5-.2-.8-.7-.8zm2.7-15h-6c-1%200-1.5%201.2-.8%201.9l1.7%201.7L6.3%2015c-.4.4-.4%201.2%200%201.6l1.1%201.1c.4.4%201.2.4%201.6%200L20.4%206.2l1.7%201.7c.7.7%201.9.2%201.9-.8v-6c0-.6-.5-1.1-1.1-1.1z%22%2F%3E%3C%2Fsvg%3E') no-repeat center;
    content: '';
}
.button-032 a {
    text-decoration: none;
	color: #fff;
}

.button-033 {
	width: 55%;
	height: 4em;
	font-size: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 250px;
    padding: .9em 2em;
    border: none;
    border-radius: 5px;
    background-color: #101166;
    color: #fff;
	margin: 0 auto;
	margin-bottom: 2em;
	text-align: center;
}

.button-033::after {
    width: .9em;
    height: .9em;
    margin-left: 10px;
    background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%23fff%22%3E%3Cpath%20d%3D%22M20.2%2015h-1.5c-.4%200-.8.3-.8.8V21H3V6h6.8c.4%200%20.8-.3.8-.8V3.8c0-.4-.3-.8-.8-.8H2.2C1%203%200%204%200%205.2v16.5C0%2023%201%2024%202.2%2024h16.5c1.2%200%202.2-1%202.2-2.2v-6c.1-.5-.2-.8-.7-.8zm2.7-15h-6c-1%200-1.5%201.2-.8%201.9l1.7%201.7L6.3%2015c-.4.4-.4%201.2%200%201.6l1.1%201.1c.4.4%201.2.4%201.6%200L20.4%206.2l1.7%201.7c.7.7%201.9.2%201.9-.8v-6c0-.6-.5-1.1-1.1-1.1z%22%2F%3E%3C%2Fsvg%3E') no-repeat center;
    content: '';
}
.button-033 a {
    text-decoration: none;
	color: #fff;
}

}

/*ボタン---------------------------------------------------------*/
@media screen and (min-width: 760px) {
/*-------------------------------------------------------------------------*/
.button-003 {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 450px;
	height: 5em;
    margin:40px auto;
    padding: .9em 2em;
    border: none;
    border-radius: 4px;
    box-shadow: 0 2px 3px rgb(0 0 0 / 25%), 0 2px 3px -2px rgb(0 0 0 / 15%);
    background-color: #101166;
    color: #fff;
    font-weight: 600;
    font-size: 1em;
	text-decoration: none;
}

.button-003:hover {
    background-color: #1579c0;
}
}

/*-------------------------------------*/
@media screen and (max-width: 759.9px) {
/*-------------------------------------*/
.button-003 {
    display: flex;
    justify-content: center;
    align-items: center;
	margin: 30px;
    width: 85%;
	height: 5em;
	margin: 50px auto;
    padding: .9em 2em;
    border: none;
    border-radius: 5px;
    box-shadow: 0 2px 3px rgb(0 0 0 / 25%), 0 2px 3px -2px rgb(0 0 0 / 15%);
    background-color: #101166;
    color: #fff;
    font-weight: 600;
    font-size: 0.6em;
	text-decoration: none;

}
}
/*タイトル--------------------------------------------------------------------*/
@media screen and (min-width: 760px) {
/*-------------------------------------------------------------------------*/
.heading-001 {
    padding: .1em .7em;
    border-left: 3px solid #2589d0;
    color: #333333;
	font-size: 1.3em;
}
.heading-002 {
	position: relative;
	padding-bottom: 20px;
	font-size: 1.3em;
	text-align: center;
	width: 100%;
}
.heading-002::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 6px 0 6px;
	border-color: #2589d0 rgba(0,0,0,0) rgba(0,0,0,0) rgba(0,0,0,0);
}
}

/*-------------------------------------*/
@media screen and (max-width: 759.9px) {
/*-------------------------------------*/
.heading-001 {
    padding: .1em .7em;
    border-left: 5px solid #2589d0;
    color: #333333;
	font-size: 1.3em;
}
.heading-002 {
	position: relative;
	padding-bottom: 20px;
	font-size: 1.2em;
	text-align: center;
}
.heading-002::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 6px 0 6px;
	border-color: #2589d0 rgba(0,0,0,0) rgba(0,0,0,0) rgba(0,0,0,0);
}
}
/*メイン画像 文字被せ---------------------------------------------------------*/
@media screen and (min-width: 760px) {
/*-------------------------------------------------------------------------*/

.example p {
  position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin:0;
  padding:50px;
  /*文字の装飾は省略*/
  }

.example img {
  width: 100%;
  }
}

/*メイン画像 文字被せ---------------------------------------------------------*/
@media screen and (min-width: 760px) {
/*-------------------------------------------------------------------------*/


.container {
  position: relative;
  }



.fa {
  width: 100%;
  height: 700px;
  position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin:0;/*余計な隙間を除く*/
  padding:0;/*余計な隙間を除く*/
  color: white;/*アイコン色*/
  font-size: 15%;/*サイズ*/
}
	
	.container {
  width: 100%;
	  height: 700px;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin:0;/*余計な隙間を除く*/
  padding:0;/*余計な隙間を除く*/
  color: white;/*アイコン色*/
  font-size: 15%;/*サイズ*/
}
}

/*-------------------------------------*/
@media screen and (max-width: 759.9px) {
/*-------------------------------------*/

.container {
  position: relative;
  width: 100%;
  height: auto;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin:0;/*余計な隙間を除く*/
  padding:0;/*余計な隙間を除く*/
  color: white;/*アイコン色*/
  font-size: 15%;/*サイズ*/  }



.fa {
  width: 100%;
  height: 700px;
  position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin:0;/*余計な隙間を除く*/
  padding:0;/*余計な隙間を除く*/
  color: white;/*アイコン色*/
  font-size: 15%;/*サイズ*/
  z-index: 100;
}
	

}
	
	
/*その他
---------------------------------------------------------------------------*/
	
.image {
  position: absolute;
  width: 100%;
  opacity: 0;
  animation: change-img-anim 30s infinite;
}

.image:nth-of-type(1) {
  animation: change-img-anim-first 30s infinite;
  animation-delay: 0s;
}

.image:nth-of-type(2) {
  animation-delay: 10s;
}

.image:nth-of-type(3) {
  animation-delay: 20s;
}

@keyframes change-img-anim-first {
  0%{ opacity: １;}
  30%{ opacity: 1;}
  36%{ opacity: 1;}
  45%{ opacity: 0;}
  100%{ opacity: 0;}
}

@keyframes change-img-anim {
  0%{ opacity: 0;}
  30%{ opacity: 1;}
  36%{ opacity: 1;}
  45%{ opacity: 0;}
  100%{ opacity: 0;}
}


	
/*その他
---------------------------------------------------------------------------*/
	
.img-box{
  width: 100%;
  height: 46vw;
  overflow: hidden;
  position: relative;
}
.img-box>div{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 46vw;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  z-index: 10;
  opacity: 0;
  animation-name: fade;
  animation-duration: 12s;
  animation-iteration-count: infinite;
}
@keyframes fade {
  0%{
    opacity: 0;
  }
  20%{
    opacity: 7;
  }
  80%{
    opacity: 0;
    transform: scale(1.2);
  }
  100%{
    z-index: 0;
    opacity: 0;
  }
}
	
	
	/*その他
---------------------------------------------------------------------------*/
	
	
/* 1枚目のスライド */
.img-box>div:first-of-type{
  background-image: url("https://assets.codepen.io/8104566/img.jpg");
}

/* 2枚目のスライド */
.img-box>div:nth-of-type(2){
  background-image: url("https://assets.codepen.io/8104566/img2.jpg");
  animation-delay: 4s;
}

/* 3枚目のスライド */
.img-box>div:last-of-type{
  background-image: url("https://assets.codepen.io/8104566/img3.jpg");
  animation-delay: 8s;
}
	




	/*その他
---------------------------------------------------------------------------*/

.imgbox {
    position: relative;
    width: 100%;
    height: 500px;
    overflow: hidden;
}
.img1, .img2, .img3{
    width: 100%;
    height: 500px;
    position: absolute;
    top: 0;
    background: center center no-repeat;
    animation: anime 10s 0s infinite;
    z-index: 0;
    opacity: 0;
}
.img1 {
    background-image: url(../images/main1.jpg);
}
.img2 {
    background-image: url(../images/main3.jpg);
    animation-delay: 5s;
}

@keyframes anime {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 1;
    }
    60% {
        opacity: 0;
        transform: scale(1.2);
        z-index: 10;
}
    100% {
        opacity: 0;
        transform: scale(1.2);
    }
}

/*-------------------------------------*/
@media screen and (max-width: 759.9px) {
/*-------------------------------------*/
	.imgbox {
    position: relative;
    width: 100%;
    max-height: 256px;
    overflow: hidden;
}
.img1, .img2, .img3{
    position: absolute;
    top: 0;
    background: center center no-repeat;
    animation: anime 10s 0s infinite;
    z-index: 0;
    opacity: 0;
}
.img1 {
    background-image: url(../images/main1.jpg);
}
.img2 {
    background-image: url(../images/main3.jpg);
    animation-delay: 5s;
}
	
}

.head{
	overflow: hidden;
}

/*headerリンク 労働者派遣法に基づく情報提供
---------------------------------------------------------------------------*/
.laborinfo{
	margin: 2px 2px 2px 2px;
	padding-right: 2em;
	text-align: right;
	cursor: pointer;
	transition: color .4s, background-color .4s, transform .7s;
}
.laborinfo:hover {
	transform: scale(1.1,1.1);
}
.laborinfo a{
	text-decoration: none;
	margin: 3px;
	font-size: 2px;
	color: #000;
	overflow: hidden;
	
}


/*header言語
---------------------------------------------------------------------------*/

.cp_ipselect {
	position: relative;
	width: 25%;
	margin: 0;
	margin: 0 0 0 auto;	flort: left;

}
.cp_sl02 {
	position: relative;
	font-family: inherit;
	background-color: transparent;
	width: 100%;
	padding: 5px 5px 5px 0;
	font-size: 13px;
	border-radius: 0;
	border: none;
	border-bottom: 1px solid rgba(0,0,0, 0.3);
	
}
.cp_sl02:focus {
	outline: none;
	border-bottom: 1px solid rgba(0,0,0, 0);
}
.cp_ipselect .cp_sl02 {
	appearance: none;
	-webkit-appearance:none
}
.cp_ipselect select::-ms-expand {
	display: none;
}
.cp_ipselect:after {
	position: absolute;
	top: 18px;
	right: 10px;
	width: 0;
	height: 0;
	padding: 0;
	content: '';
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 6px solid rgba(0, 0, 0, 0.3);
	pointer-events: none;
}
.cp_sl02_selectlabel {
	color: rgba(0,0,0, 0.5);
	font-size: 13px;
	font-weight: normal;
	position: absolute;
	pointer-events: none;
	left: 0;
	top: 10px;
	transition: 0.2s ease all;
}
.cp_sl02:focus ~ .cp_sl02_selectlabel, .cp_sl02:valid ~ .cp_sl02_selectlabel {
	color: #da3c41;
	top: -20px;
	transition: 0.2s ease all;
	font-size: 14px;
}
.cp_sl02_selectbar {
	position: relative;
	display: block;
	width: 100%;
}
.cp_sl02_selectbar:before, .cp_sl02_selectbar:after {
	content: '';
	height: 2px;
	width: 0;
	bottom: 1px;
	position: absolute;
	background: #da3c41;
	transition: 0.2s ease all;
}
.cp_sl02_selectbar:before {
	left: 50%;
}
.cp_sl02_selectbar:after {
	right: 50%;
}
.cp_sl02:focus ~ .cp_sl06_selectbar:before, .cp_sl06:focus ~ .cp_sl06_selectbar:after {
	width: 50%;
}
.cp_sl02_highlight {
	position: absolute;
	top: 25%;
	left: 0;
	pointer-events: none;
	opacity: 0.5;
}


/*個人情報の取り扱いページ
---------------------------------------------------------------------------*/
.personaldata{
	width: 100%;
}

.table_design08 {
	border-collapse: collapse;
	table-layout: fixed;
	max-width: 700px;
	text-align: center;
	margin: 0 auto 3em;
}
.table_design08 th, .table_design08 td {
	border: 1px solid #939393;
	padding: 1em;
}
.table_design08 th{
}
.table_design08 thead th {
	background-color: #efefef;
	border: 1px solid #939393;
	border-right: 1px solid #939393;
	border-bottom: 1px solid #939393;
}
.table_design08 thead th:last-of-type {
	border-right: 1px solid #939393;
}
.table_design08 tbody th {
	font-weight: bold;
	text-align: center;
	width: 10%;
}
.table_design08 tbody td {
	text-align: left;
}
.table_design08 caption {
	font-size: 1.2em;
	text-align: left;
	margin-bottom: 0.5em;
}
.table_design08 li {
	margin-left: 1.4em;
	text-indent: -1.4em;}

.thname{
  width: 30%;	
}
.thobjective{
	width: 60%;
}
.olitem{
	list-style-type: lower-latin;
	margin: 0;
	padding: 0;
	position:relative;
}
.olitem li{
	margin: 0 20px 20px 30px;
	padding: 0;
}


@media screen and (max-width: 787px) {
.table_design08 {
	text-align: left;
  }
.table_design08 thead {
    display:none;
  }
.table_design08 th, .table_design08 td {
    display: block;
    border: 0;
    border-bottom: 1px solid #939393;
    border-right: 1px solid #939393;
    border-left: 1px solid #939393;
	width: 100%;
  }
.table_design08 tbody th{
	background: #efefef;
    color:#000;
	margin-top: 1em;
	border: 1px solid #939393;
	width: 100%;
	padding: 4px;
  }
.table_design08 td::before{
    content: attr(data-label);
    color: #000;
    font-weight: bold;
    display: block;
    min-width: 4em;
	margin-right: 1em;
	}
}

	
/*アコーディオンメニュー
---------------------------------------------------------------------------*/
.accordion-003 {
    max-width: 100%;
    margin-bottom: 20px;
    border-bottom: 1px solid #d6dde3;
	font-size: 18px;
	background: #F2F2F2;
}

.accordion-003 summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    color: #333333;
    font-weight: 600;
    cursor: pointer;
	background: #fff;
}

.accordion-003 summary::-webkit-details-marker {
    display: none;
}

.accordion-003 summary::after {
    transform: translateY(-25%) rotate(45deg);
    width: 7px;
    height: 7px;
    margin-left: 10px;
    border-bottom: 3px solid #333333b3;
    border-right: 3px solid #333333b3;
    content: '';
    transition: transform .3s;
}

.accordion-003[open] summary::after {
    transform: rotate(225deg);
}

.accordion-003 p {
    transform: translateY(-10px);
    opacity: 0;
    margin: 5px 5px 5px 0;
    padding: .3em 2em 1.5em;
    color: #333333;
    transition: transform .5s, opacity .5s;
	font-size: 12px;
}

.accordion-003[open] p {
    transform: none;
    opacity: 1;
}


/*　＼　吹き出し風　／
---------------------------------------------------------------------------*/
.marker span{
    background-color: rgba(33.203, 255, 0, 0.5);

}
.fukidashi{
	margin:0 auto 30px auto;
	text-align: center;
}
.fukidashi span{
	position: relative;
	color: #FF0004;
	margin:0 auto 30px auto;
}
.fukidashi span::before,
.fukidashi span::after{
	content: "";
	display: inline-block;
	background: #FF0004;
	width: 1px;
	position: absolute;
	margin-top: 80px;
	
}
.fukidashi span::before{
	left: 0;
}
.fukidashi span::after{
	right: 0;
}
@media screen and (min-width: 760px){
	.fukidashi span{

}
.fukidashi span::before,
.fukidashi span::after{
	height: 50px;
	bottom: -20px;
}
.fukidashi span::before{
    transform: rotate(-30deg);
}
.fukidashi span::after{
    transform: rotate(30deg);
}
}
/*-------------------------------------*/
@media screen and (max-width: 759.9px) {
/*-------------------------------------*/
.fukidashi span{
    display: inline-block;
    padding: 0 20px;	text-align: center;
	margin:0 auto 30px auto;
}
.fukidashi span::before,
.fukidashi span::after{
    height: 60px;
    bottom: -5px;
}
.fukidashi span::before{
    transform: rotate(-20deg);
}
.fukidashi span::after{
    transform: rotate(20deg);
}
}


/*.balloon01{
	display: flex;
}*/
.balloon02 {
	position: relative;
	padding: 20px;
	background-color: #D6E8FF;
	border: solid 1px #fff;
	border-radius: 35px;
	margin: 0 auto 30px 20px;
	max-width: 800px;
	text-align: center;
}
.balloon02>div{
    width: 50%;
    background: #FFF;
    border: 1px solid #999;
    padding: 10px;
}
.balloon02::before {
	content: '';
	position: absolute;
	display: block;
	background-color: #D6E8FF;
	border: solid 1px #fff;
	border-radius: 50%;
	left: -35px;
	bottom: 15px;
	width: 30px;
	height: 30px;
}
.balloon02::after {
	content: '';
	position: absolute;
	display: block;
	background-color: #D6E8FF;
	border: solid 1px #fff;
	border-radius: 50%;
	left: -55px;
	bottom: 10px;
	width: 15px;
	height: 15px;
}
@media screen and (min-width: 760px){
  .balloon02 span{
    padding: 0 30px;
  }
  .balloon02 span::before,
  .balloon02 span::after{
    height: 30px;
    bottom: -8px;
  }
  .balloon02 span::before{
    transform: rotate(-30deg);
  }
  .balloon02 span::after{
    transform: rotate(30deg);
  }
}
@media screen and (max-width: 759.9px){
  .balloon02 span{
    display: inline-block;
    padding: 0 20px;
  }
  .balloon02 span::before,
  .balloon02 span::after{
    height: 40px;
    bottom: -5px;
  }
  .balloon02 span::before{
    transform: rotate(-20deg);
  }
  .balloon02 span::after{
    transform: rotate(20deg);
  }
}


.balloon03 {
	position: relative;
	padding: 20px;
	background-color: #D6E8FF;
	border: solid 1px #fff;
	border-radius: 35px;
	margin: 0 50px 30px auto;
	max-width: 800px;
	text-align: center;
}
.balloon03>div{
    width: 50%;
    background: #FFF;
    border: 1px solid #999;
    padding: 10px;
}
.balloon03::before {
	content: '';
	position: absolute;
	display: block;
	background-color: #D6E8FF;
	border: solid 1px #fff;
	border-radius: 50%;
	right: -35px;
	bottom: 15px;
	width: 30px;
	height: 30px;
}
.balloon03::after {
	content: '';
	position: absolute;
	display: block;
	background-color: #D6E8FF;
	border: solid 1px #fff;
	border-radius: 50%;
	right: -55px;
	bottom: 10px;
	width: 15px;
	height: 15px;
}
@media screen and (min-width: 760px){
  .balloon03 span{
    padding: 0 30px;
  }
  .balloon03 span::before,
  .balloon03 span::after{
    height: 30px;
    bottom: -8px;
  }
  .balloon03 span::before{
    transform: rotate(-30deg);
  }
  .balloon03 span::after{
    transform: rotate(30deg);
  }
}
@media screen and (max-width: 759.9px){
  .balloon03 span{
    display: inline-block;
    padding: 0 20px;
  }
  .balloon03 span::before,
  .balloon03 span::after{
    height: 40px;
    bottom: -5px;
  }
  .balloon03 span::before{
    transform: rotate(-20deg);
  }
  .balloon03 span::after{
    transform: rotate(20deg);
  }
}



.box26 {
    position: relative;
    margin: 2em 0;
    padding: 0.5em 1em;
    border: solid 3px #101166;
    border-radius: 8px;
}
.box26 .box-title {
    position: absolute;
    display: inline-block;
    top: -13px;
    left: 10px;
    padding: 0 9px;
    line-height: 1;
    font-size: 19px;
    background: #FFF;
    color: #101166;
    font-weight: bold;
}
.box26 p {
    margin: 0; 
    padding: 0;
}






.box28 {
  position: relative;
  padding: 1.5rem;
  text-align: center;
  border: 2px solid #000;
  background: #fff;
}

.box28:before,
.box28:after {
  position: absolute;
  content: '';
}

.box28:before {
  top: -40px;
  left: calc(50% - 40px);
  width: 80px;
  height: 80px;
  border: 2px solid #000;
  border-radius: 50%;
  background: #fff;
}

.box28:after {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
}

.box28 i {
  font-size: 30px;
  font-size: 3rem;
  line-height: 60px;
  position: absolute;
  z-index: 1;
  top: -40px;
  left: calc(50% - 40px);
  width: 80px;
  height: 60px;
  text-align: center;
}

.box28 span {
  position: relative;
  z-index: 1;
}



.box17{
    margin:2em 0;
    position: relative;
    padding: 0.5em 1.5em;
    border-top: solid 2px black;
    border-bottom: solid 2px black;
}
.box17:before, .box17:after{
    content: '';
    position: absolute;
    top: -10px;
    width: 2px;
    height: -webkit-calc(100% + 20px);
    height: calc(100% + 20px);
    background-color: black;
}
.box17:before {left: 10px;}
.box17:after {right: 10px;}
.box17 p {
    margin: 0; 
    padding: 0;
}


/*現HPより
---------------------------------------------------------------------------*/
/* module
----------------------------------------------- */
#wrapper {
position: relative;
padding-top: 80px;
}
.area {
clear: both;
padding: 0 10px;
}

div#contact_form {}
.area_in {
display: block;
clear: both;
width: 100%;
max-width: 1000px;
margin: 0 auto;
padding: 0;
	
	
}
/*追加　！！----------------------------------*/
@media screen and (max-width: 759.9px) {
/*-------------------------------------*/



	}
	

.pagetop {
position: fixed;
bottom: -100px;
right: 10px;
z-index: 9999;
}
.pagetop.active {
bottom: 10px;
}
.pagetop a {
display: block;
color: #fff!important;
background: rgba(35,35,35,1);
text-align: center;
text-decoration: none;
font-size: 11px;
letter-spacing: 0.1em;
height: 60px;
width: 60px;
line-height: 60px;
border-radius: 30px;
}
.pagetop:hover {
opacity:0.70;
}
.pan {
display: block;
clear: both;
font-size: 85%;
}
.pan .area_in {
padding: 20px 0 10px 0;
}
.pan ol {
text-align: left;
}
.pan ol li {
display: inline-block;
padding-right: 20px;
}
.pan ol li a {
color: #272764;
}
	@media screen and (max-width:  759.9px) {
	#wrapper {
	padding: 50px 10px 0 10px;
	}
	#pan.pan {
	padding: 0;
	}
	.pagetop a {
	height: 40px;
	width: 40px;
	line-height: 40px;
	border-radius: 20px;
	font-size: 10px;
	}
	}

 .area_in {
width: 100%;
max-width: inherit;
display: table;
height: 100%;
padding: 0;
}
#header .area_in > * {
display: table-cell;
vertical-align: middle;
}
.branding {
width: 320px;
}
.branding .branding_in {
display: table;
width: 100%;
max-width: 330px;
}
.branding .branding_in > * {
display: table-cell;
}
.branding .branding_in > *.logo_nta img {
max-width: 110px;
}
.logo img {
max-width: 220px;
}
	@media screen and (max-width: 759.9px) {
	.branding .branding_in {
	width: 236px;
	}
	.branding .branding_in > *.logo_nta img {
	width: 79px;
	max-width: none;
	height: auto;
	}
	.area_in {
	width: 100%;
	}
	.branding {
	width: auto;
	text-align: center;
	padding-right: 60px;
	}
	#header .branding > * {
	display: inline-block;
	}
	}
#contact {
background: #fff;
padding-top: 30px;
padding-bottom: 40px;
}
#contact .title {
text-align: center;
margin-bottom: 20px;
}
#contact .title img {
max-width: 300px;
}
#contact .btn a {
position: relative;
display: table;
width: 100%;
max-width: 500px;
margin: 0 auto;
height: 60px;
text-decoration: none;
}
#contact .btn a:after {
content: "";
display: block;
position: absolute;
left: 0;
bottom: -5px;
width: 100%;
height: 100%;
background: #CE5300;
border-radius: 5px;
z-index: 0;
}
#contact .btn a span {
position: relative;
display: table-cell;
vertical-align: middle;
text-align: center;
line-height: 1;
border-radius: 5px;
z-index: 1;
background: #F60;
color: #FFF;
font-size: 130%;
z-index: 1;
}
#contact .btn a span:hover {
background: #FF944C;
}
	@media screen and (max-width: 759.9px) {
	#contact {
	padding-top: 20px;
	padding-bottom: 20px;
	}
	#contact .title {
	margin-bottom: 10px;
	}
	#contact .btn a {
	height: 60px;
	}
	#contact .btn a span {
	font-size: 150%;
	}
	}

/* page contact form
-------------------------------------------------------*/
.form {
}
.form label {
cursor: pointer;
display: inline-block;
*display: inline;
*zoom: 1;
margin: 0 3px 3px 0;
padding: 5px 5px 5px 0px;
}
.form input[type="checkbox"] ,
.form input[type="radio"] {
margin-right: 5px;
}
.form input[type="text"],
.form input[type="password"] {
background: #fff;
border: 1px solid #ccc;
margin: 2px 0;
padding: 5px;
width: 90%;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
-webkit-appearance: none;
}
.form select {
background-color: #fff;
border: 1px solid #ccc;
margin: 0 3px 3px 0;
padding: 5px;
width: 90%;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
cursor: pointer;
-webkit-appearance: none;
}
.form textarea {
background: #fff;
width: 90%;
border: 1px solid #ccc;
margin: 0 3px 3px 0;
padding: 5px;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
-webkit-appearance: none;
}
.form_box {
margin-bottom: 40px;
}
.form_box .text {
text-align: left;
margin-bottom: 30px;
padding: 0 10px;
color: #039;
font-size: 140%;
}
.form_box .text span {
display: inline-block;
}
.form_box dl {
display: table;
width: 100%;
border-bottom: 1px solid #ddd;
}
.form_box dl > * {
display: table-cell;
padding: 20px;
}
.form_box dl > dt {
width: 30%;
vertical-align: middle;
padding-right: 0;
}
.form_box dl > dt span {
display: inline-block;
background: #999;
border-radius: 3px;
line-height: 1.2;
padding: 5px 10px;
float: right;
color: #fff;
}
.form_box dl > dt span.req {
background: #F00;
}
.form_box dl dt.color {
color: #06F
}
.form_box dl ul li {
display: inline;
padding-right: 10px;
}
	@media screen and (max-width: 759.9px) {
	#contact_form.area {
	padding: 0;
	}
	#contact_form .base_title {
	padding-left: 10px;
	padding-right: 10px;
	}
	.form_box {
	margin-bottom: 20px;
	border-bottom: 1px solid #ddd;
	}
	.form_box .text {
	font-size: 110%;
				font-size: 200px;

	}
	.form_box dl {
	display: block;
	border: none;
	border-top: 1px solid #ddd;	
				font-size: 200px;

	}
	.form_box dl:nth-child(even) {
	background: #fafafa;
	}
	.form_box dl > * {
	display: block;
	}
	.form_box dl > dt {
	position: relative;
	width: auto;
	vertical-align: middle;
	padding: 20px 10px 10px 70px;
	}
	.form_box dl > dt.leftside {
	padding: 20px 10px 10px 10px;
	}
	.form_box dl > dt span {
	position: absolute;
	left: 10px;
	top: 18px;
	float: none;
	}
	.form_box dl > dd {
	padding: 0 10px 20px 10px;
	}
	.form_box dl > dd .w80p {
	width: 100%!important;
	}
	.form_box dl ul li {
	padding-right: 20px;
	}
	}
.form_btn_box {
text-align: center;
}
.form_btn_box {
padding-bottom: 60px;
}
.form_btn_box .btn {
position: relative;
display: table;
width: 100%;
max-width: 500px;
margin: 0 auto;
height: 60px;
text-decoration: none;
}
.form_btn_box .btn:after {
content: "";
display: block;
position: absolute;
left: 0;
bottom: -5px;
width: 100%;
height: 100%;
background: #141432;
border-radius: 5px;
z-index: 0;
}
.form_btn_box .btn .form_btn {
position: relative;
display: table-cell;
vertical-align: middle;
text-align: center;
line-height: 1;
border-radius: 5px;
-webkit-appearance: none;
z-index: 1;
width: 100%;
height: 60px;
background: #282864;
color: #fff;
font-size: 130%;
border: none;
outline: none;
z-index: 1;
}
.form_btn_box .btn .form_btn:hover {
background: #696993;
}
.form_btn_box .link {
display: inline-block;
margin: 10px;
}
	@media screen and (max-width: 759.9px) {
	.form_btn_box {
	padding: 0 10px 40px 10px;
	border-bottom: none;
	}
	}
.questionnaire_box {
margin-bottom: 40px;
}
.questionnaire_box .title {
border: 1px solid #F00;
max-width: 800px;
font-size: 100%;
line-height: 1.1;
font-weight: bold;
color: #F00;
padding: 20px;
text-align: center;
margin: 30px auto;
}
.questionnaire_box .title span {
display: inline-block;
}
.questionnaire_box dl {
width: 100%;
}
.questionnaire_box dl > * {
padding: 10px;
}
.questionnaire_box dl > dt {
vertical-align: middle;
padding-bottom: 0;
}
ul.questionnaire_box_item01 li {
display: table;
}
ul.questionnaire_box_item01 li > * {
display: table-cell;
}
ul.questionnaire_box_item01 li > span {
width: 150px;
}
ul.questionnaire_box_item01 li > label {
padding-right: 30px;
}
ul.questionnaire_box_item01 li > input[type="text"] {
width: 300px;
}
	@media screen and (max-width: 759.9px) {
	.questionnaire_box {
	margin-bottom: 10px;
	}
	.questionnaire_box .title {
	padding: 10px;
	margin: 0 10px 20px 10px;
	max-width: inherit;
	width: auto;
	}
	.questionnaire_box dl > * {
	padding: 10px;
	}
	.questionnaire_box dl > dt {
	vertical-align: middle;
	padding-bottom: 0;
	}
	.questionnaire_box ul li span {
	display: inline-block;
	}
	.questionnaire_box label {
	min-width: inherit;
	width: 100%;
	padding: 10px;
	}
	ul.questionnaire_box_item01 li {
	display: block;
	margin-bottom: 20px;
	}
	ul.questionnaire_box_item01 li > * {
	display: block;
	}
	ul.questionnaire_box_item01 li > span {
	width: auto;
	display: block;
	}
	ul.questionnaire_box_item01 li > label {
	padding-right: 0;
	display: block;
	width: auto;
	}
	ul.questionnaire_box_item01 li > input[type="text"] {
	width: 100%;
	}
	}
.policy_box {
margin-bottom: 30px;
border: 1px solid #ddd;
height: 300px;
overflow-y: scroll;
}
.policy_box p {
padding: 20px;
}
.policy_box p b {
font-weight: bold;
display: inline-block;
margin-bottom: 10px;
}
	@media screen and (max-width: 759.9px) {
	.policy_box {
	margin-bottom: 20px;
	border: 1px solid #ddd;
	height: 200px;
	}
	.policy_box p {
	padding: 10px;
	background: #fafafa;
	}
	}


/*キャンペーン-----------------------------------------------------*/
@media screen and (min-width: 1200px) {
/*-----------------------------------------------------------*/
.campaign {
    position: relative;
    background-color: #fff;
	max-width: 920px;
	text-align: center;
	margin:0 auto;
	margin-bottom: 40px;
	background: #e6e6fa;
	padding: 12px;
    border: double 4px #704cbc;
}

.campaign:after{
	border-left:30px solid transparent;
	border-bottom:30px solid #704cbc;
	content: '';
	display: block;
	position: absolute;
	bottom: 0px;
	right: 0px;
}

.block1{
	display: flex;
	width: 100%;
	margin: 10px auto;
}

.block02a {
	width: 60%;
	text-align: left;
	color: #000;
	font-size: 18px;
  background-color: rgb(0 0 0 0);
}

.block02subtitle{
    -webkit-text-size-adjust: 100%;
    font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
	text-align: center;
	color: #fff;
	font-size: 1.5em;
	font-weight:bold;
	background: #704cbc;
	border-radius: 8px 8px 0 0;
	/*height: 90px;*/
	width: 95%;
	margin:0 auto 0 ;
	padding:20px;
	display: block;
}
	
.block02title{
	color: #704cbc;
    -webkit-text-size-adjust: 100%;
    font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
	text-align: left;
	font-size: 1.25em;
	font-weight:bold;
	background: #fff;
	height: auto;
	width: 95%;
	margin:auto;
	padding:20px 30px 0;
    line-height: 1.75em;
}

.block02title span{
    font-size: 30px;
    border-bottom: 7px solid #F4E511;
}
    
.block02img{
	background: #fff;
	width: 95%;
	margin:0 auto 0 ;
	padding:0px 25px 20px;
	border-radius: 0 0 8px 8px;
    text-align: right;
}

.block02b {
	width: 40%;
	text-align: left;
	color: #000;
	font-size: 20px;
    background-color: rgb(0 0 0 0);
}

.block02b p {

}

.acttle{
	display: inline-block;
    font-size: 14px;
    font-weight: 700;
    padding: 4px 25px 6px;
    margin: 8px 0 4px;
    text-align: center;
    border-radius: 5px;
    background: #704cbc;
    color: #fff;
}

.textsub{
	margin: 3px 5px 10px;	
	font-size: 12px;
}

.textsub a{
    display: block;
    font-size: 12px;
    color: #000;
    padding-top: 1em;
}

.block2{
	display: flex;
	width: 100%;
	margin: 0 auto;
}

.block02sub{
	display:block;
	flex-wrap:wrap;
}
	
.block02text {	
	color: #000;
    -webkit-text-size-adjust: 100%;
    font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
	text-align: center;
	font-size: 14px;
}

.block02c {
	clear: both;
	display: block;
	text-align: left;
	color: #fff;
	font-size: 12px;
	padding: 5px 0 5px 20px;
	background: #0072BC;
	width: 25%;
}
.block02d {
	clear: both;
	display: block;
	text-align: left;
	color: #fff;
	font-size: 12px;
	padding: 5px 0 5px 20px;
	background: #0072BC;
	width: 75%;
}
}

@media screen and (max-width: 1199.9px) {
/*-----------------------------------------------------------*/
.campaign {
    position: relative;
    box-shadow: 0 0 1px 0 #555;
    box-sizing: border-box;
    background-color: #fff;
	width: 580px;
	text-align: center;
	margin:0 auto;
	margin-bottom: 40px;
	background: #e6e6fa;
	padding: 5px;
    border: double 4px #704cbc;
}

.campaign:after{
	border-left:50px solid transparent;
	border-bottom:50px solid #704cbc;
	content: '';
	display: block;
	position: absolute;
	bottom: 0px;
	right: 0px;
}

.block02sub{
	display:block;
	flex-wrap:wrap;
}

.block02subtitle{
    -webkit-text-size-adjust: 100%;
    font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
	text-align: center;
	color: #fff;
	font-size: 26px;
	font-weight:bold;
	background: #704cbc;
	/*height: 90px;*/
	width: 95%;
	margin:10px auto 0 ;
	padding:10px 0;
}

.block02title{
	color: #000;
    -webkit-text-size-adjust: 100%;
    font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
	text-align: center;
	color: #704cbc;
	font-size: 1.25em;
	font-weight:bold;
	background: #fff;
	height: auto;
	width: 95%;
	margin:auto;
	padding:15px 0;
}

.block02title span{
    font-size: 28px;
    border-bottom: 7px solid #F4E511;
}

.block02text {	
	color: #000;
    -webkit-text-size-adjust: 100%;
    font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
	text-align: center;
	font-size: 14px;
}

.block02b {
	clear: both;
	display: block;
	width: auto;
	text-align: left;
	color: #000;
	font-size: 16px;
	padding: 5px 0 0 20px;
	background: #e6e6fa;
}

.block02img{
	margin:10px;
    text-align: center;
}

.block02b p {
    text-indent: -0.5em;
    padding-left: 1em;
}

.textsub a{
    display: block;
    font-size: 14px;
    color: #000;
}

.acttle{
	display: inline-block;
    font-size: 18px;
    font-weight: 700;
    padding: 2px 20px 4px;
    margin: 5px 0;
    text-align: center;
    border-radius: 5px;
    background: #704cbc;
    color: #fff;
}

.textsub{
	margin-bottom: 0.5em;	
    	margin: 6px 8px 10px;	
}

.textsub a{
    display: block;
    font-size: 1em;
    color: #000;
    padding-top: 1em;
}

.block02c {
	clear: both;
	display: block;
	width: auto;
	text-align: left;
	color: #fff;
	font-size: 14px;
	padding: 5px 0 0 20px;
	background: #0072BC;
}
.block02d {
	clear: both;
	display: block;
	width: auto;
	text-align: left;
	color: #fff;
	font-size: 14px;
	padding: 0 0 5px 20px;
	background: #0072BC;
}
}

@media screen and (max-width: 779.9px) {
/*-------------------------------------*/
.campaign {
    position: relative;
    box-shadow: 0 0 1px 0 #555;
    box-sizing: border-box;
    background-color: #fff;
	width: 95%;
	text-align: center;
	margin:0 auto;
	margin-bottom: 20px;
	background: #e6e6fa;
	padding-top: 5px;
    border: 4px double #704cbc;
}

.campaign:after{
	border-left:30px solid transparent;
	border-bottom:30px solid #704cbc;
	content: '';
	display: block;
	position: absolute;
	bottom: 0px;
	right: 0px;
}

.block02sub{
	display:block;
	flex-wrap:wrap;
}

.block02subtitle{
    -webkit-text-size-adjust: 100%;
    font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
	text-align: center;
	color: #fff;
	font-size: 1em;
	font-weight:bold;
	background: #704cbc;
	width: 95%;
	margin:10px auto 0 ;
	padding:5px 0;
	display:inline-block;
}

.block02title{
	color: #000;
    -webkit-text-size-adjust: 100%;
    font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
	text-align: center;
	color: #704cbc;
	font-size: 12px;
	font-weight:bold;
	background: #fff;
	height: auto;
	width: 95%;
	margin:auto;
	padding:8px;
	line-height: 1.8em
}

.block02title span{
    font-size: 18px;
    border-bottom: 7px solid #F4E511;
}

.block02text {	
	color: #000;
    -webkit-text-size-adjust: 100%;
    font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
	text-align: center;
	color: #000;
	font-size: 0.6em;
	padding:0 5px 5px 5px;
}

.block02img{
	margin:10px;
    text-align: center;
}

.block02b {
	clear: both;
	display: block;
	width: auto;
	text-align: left;
	color: #000;
	font-size: 20px;
	padding: 5px 0 0 20px;
	background: #e6e6fa;
}

.block02b p {
    text-indent: -0.5em;
    padding-left: 1em;
}

.acttle{
	display: inline-block;
    font-size: 0.6em;
    font-weight: 700;
    padding: 2px 20px 4px;
    margin: 5px 0;
    text-align: center;
    border-radius: 5px;
    background: #704cbc;
    color: #fff;
}

.textsub{
	margin-bottom: 0.5em;
	font-size: 0.5em;
}
    
.textsub a{
    display: block;
    font-size: 0.8em;
    color: #000;
    padding-top: 1em;
}

.block02c {
	clear: both;
	display: block;
	width: auto;
	text-align: left;
	color: #fff;
    font-size: 0.6em;
	padding: 5px 0 0 20px;
	background: #0072BC;
}
.block02d {
	clear: both;
	display: block;
	width: auto;
	text-align: left;
	color: #fff;
    font-size: 0.6em;
	padding: 0 0 5px 20px;
	background: #0072BC;
}
}

/*リボン-----------------------------------------------------*/
@media screen and (min-width: 770px) {
/*-----------------------------------------------------------*/
.ribbon1 {
	width: 85%;
	position: relative;
	height: 40px;/*リボンの高さ*/
	line-height: 40px;/*リボンの高さ*/
	text-align: center;
	margin: 0 auto;
	padding: 0 20px;/*横の大きさ*/
	font-size: 13px;
	background: #C265C2;
	color: #fff;
	box-sizing: border-box;
}

.ribbon1:before, .ribbon1:after {
	position: absolute;
	content: '';
	width: 0px;
	height: 0px;
	z-index: 1;
}

.ribbon1:before {
	top: 0;
	left: 0;
	border-width: 20px 0px 20px 10px;
	border-color: transparent transparent transparent #65C294;
	border-style: solid;
}

.ribbon1:after {
	top: 0;
	right: 0;
	border-width: 20px 10px 20px 0px;
	border-color: transparent #65C294 transparent transparent;
	border-style: solid;
}
}

@media screen and (max-width: 769.9px) {
/*-------------------------------------*/
.ribbon1 {
	width: 85%;
	position: relative;
	height: 　35spx;
	text-align: center;
	padding: 0 12px;
	margin: 4px auto;
	font-size: 1em;
	background: #C265C2;
	color: #fff;
	box-sizing: border-box;
	line-height: 1.5em;
}
.ribbon1:before, .ribbon1:after {
	position: absolute;
	content: '';
	width: 0px;
	height: 0px;
	z-index: 1;
}

.ribbon1:before {
	top: 0;
	left: 0;
	border-width: 10px 0px 10px 4px;
	border-color: transparent transparent transparent #65C294;
	border-style: solid;
}

.ribbon1:after {
	top: 0;
	right: 0;
	border-width: 10px 4px 10px 0px;
	border-color: transparent #65C294 transparent transparent;
	border-style: solid;
}
}


/*講師-----------------------------------------------------*/
@media screen and (min-width: 1200px) {
/*-----------------------------------------------------------*/

.lecture{
	display: flex;
	flex-wrap:wrap;
}

.lecname{
	text-align: center;
	margin: 0 auto;
	font-size: 1.4em;
}

.outside{
	max-width: 600px;
	width: 45%;	width:calc(100%/ 3 - 20px);/* 横幅を3等分 */
	margin: 10px;
    display: flex;/* 高さ揃えたい */
    flex-direction: column;/* 高さ揃えたい */
}

.lecimg{
	position: relative;
	z-index: 1;
	max-width: 200px;		
	width: 70%;
	height: auto;
	margin: 0 auto;
}

.lectext{
	margin-top: -80px;/* マイナスmarginを指定 */
	padding: 90px 20px;/* 重ねる分をpaddingで指定 */
	margin-bottom: 30px;
	position: relative;
	z-index: 0;
	max-width: 500px;
	height: auto;
    background: #f5f5f5;
	text-align: center;
	border-radius: 10px;
}

.introduction h3{
	color: #333333;
	letter-spacing : 2px;
	font-size: 16px;
	padding-bottom: 20px;
	border-bottom: 1px solid #ddd;
}

.introduction h4{
	color: #333333;
	font-size: 12px;
	text-align: left;
	padding-bottom: 0;
}

	
.introduction a{
	color: #333333;
	font-size: 12px;
	margin: 0 auto;
	text-align: left;
}

.genre{
	margin:0 5px 40px 0;
	padding: 2px 4px;
	font-size: 10px;
	color:darkgray;
    border: 1px solid #a9a9a9;
	border-radius:3px;
}

.lecture2 {
	margin: 0 auto;
	text-align: center;
	font-size: 1.3em;
	width: 900px;
}
 
.lecture2 ul {
	margin: 0 ;
    padding: 0 ;

}




.breadcrumb {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	text-align: center;
	margin: 0 auto;
}

.breadcrumb li:not(:last-of-type)::after {
	content: "/";
	margin: 0 .6em; /* 記号の左右の余白 */
	color: #777; /* 記号の色 */
}

}
@media screen and (max-width: 1199.9px) {
/*--------------------------------------*/
.lecture{
	display: flex;
	flex-wrap:wrap;
}

.lecname{
	text-align: center;
	margin: 0 auto;
	font-size: 1.3em;

}

.outside{
max-width: 600px;
	width: 45%;	width:calc(100%/ 2 - 20px);/* 横幅を3等分 */
	margin: 10px;
}

.lecimg{
	position: relative;
	z-index: 1;
	max-width: 200px;		
	width: 70%;
	height: auto;
	margin: 0 auto;
}

.lectext{
	margin-top: -80px;/* マイナスmarginを指定 */
	padding: 90px 20px;/* 重ねる分をpaddingで指定 */
	position: relative;
	z-index: 0;
	max-width: 500px;
	height: auto;
    background: #f5f5f5;
	text-align: center;
	border-radius: 10px;
}

.introduction h3{
	color: #333333;
	letter-spacing : 2px;
	font-size: 16px;
	padding-bottom: 20px;
	border-bottom: 1px solid #ddd;
}

.introduction a{
	color: #333333;
	font-size: 12px;
	margin: 0 auto;
	text-align: left;
}

.genre{
	margin:0 5px 40px 0;
	padding: 2px 4px;
	font-size: 10px;
	color:darkgray;
    border: 1px solid #a9a9a9;
	border-radius:3px;
}




}


@media screen and (max-width: 779.9px) {
/*-------------------------------------*/
.lecture{
	display: flex;
	flex-wrap:wrap;
}

.lecname{
	text-align: center;
	margin: 0 auto
}

.outside{
max-width: 600px;
	width: 45%;	width:calc(100%/ 1 - 20px);/* 横幅を3等分 */
	margin: 10px;
}

.lecimg{
	position: relative;
	z-index: 1;
	max-width: 200px;		
	width: 70%;
	height: auto;
	margin: 0 auto;
}

.lectext{
	margin-top: -80px;/* マイナスmarginを指定 */
	padding: 90px 20px;/* 重ねる分をpaddingで指定 */
	position: relative;
	z-index: 0;
	max-width: 500px;
	height: auto;
    background: #f5f5f5;
	text-align: center;
	border-radius: 10px;
}

.introduction h3{
	color: #333333;
	letter-spacing : 2px;
	font-size: 16px;
	padding-bottom: 20px;
	border-bottom: 1px solid #ddd;
}

.introduction a{
	color: #333333;
	font-size: 12px;
	margin: 0 auto;
	text-align: left;
}

.genre{
	margin:0 5px 40px 0;
	padding: 2px 4px;
	font-size: 10px;
	color:darkgray;
    border: 1px solid #a9a9a9;
	border-radius:3px;
}


}


/*講師の表*/
.table_design08_1 {
	border-collapse: collapse;
	table-layout: fixed;
	max-width: 800px;
	text-align: center;
	margin: 0 auto;
}
.table_design08_1 th, .table_design08_1 td {
	border: 1px solid #939393;
	padding: 1em;
}
.table_design08_1 th{
}
.table_design08_1 thead th {
	background-color: #efefef;
	border: 1px solid #939393;
	border-right: 1px solid #939393;
	border-bottom: 1px solid #939393;
}
.table_design08_1 thead th:last-of-type {
	border-right: 1px solid #939393;
}
.table_design08_1 tbody th {
	font-weight: bold;
	text-align: center;
	width: 10%;
}
.table_design08_1 tbody td {
	text-align: left;
}
.table_design08_1 caption {
	font-size: 1.2em;
	text-align: left;
	margin-bottom: 0.5em;
}
.table_design08_1 li {
	margin: 0;
}
.table_design08_1 ul {
	margin: 0 1px;
	padding: none;
}

.thname_1{
  width: 40%;	
}
.thobjective_1{
	width: 50%;
}


@media screen and (max-width: 787px) {
.table_design08_1 {
	text-align: left;
  }
.table_design08_1 thead {
    display:none;
  }
.table_design08_1 th, .table_design08_1 td {
    display: block;
    border: 0;
    border-bottom: 1px solid #939393;
    border-right: 1px solid #939393;
    border-left: 1px solid #939393;
	width: 100%;
  }
.table_design08_1 tbody th{
	background: #efefef;
    color:#000;
	margin-top: 1em;
	border: 1px solid #939393;
	width: 100%;
	padding: 4px;
  }
.table_design08_1 td::before{
    content: attr(data-label);
    color: #000;
    font-weight: bold;
    display: block;
    min-width: 4em;
	margin-right: 1em;
	}
}
/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}

/*臨時用（イヤホンガイド年末年始）
---------------------------------------------------------------------------*/
.notice-box {
    max-width: 700px;
    margin: 20px auto; /* ← これで中央寄せが復活 */
    text-align: center;
    background: #fff;
    padding: 30px 40px;
    border-radius: 8px;
    border: 1px solid #ddd;
    font-family: "Hiragino Sans", "Noto Sans JP", sans-serif;
    line-height: 1.8;
}

@media (max-width: 600px) {
    .notice-box {
        margin-left: 10px;
        margin-right: 10px;
    }
}

.title {
    text-align: center;
    font-size: 1.5rem;
    margin-bottom: 25px;
    letter-spacing: 0.1em;
}

.msg {
    margin-bottom: 20px;
}

.period {
    text-align: center;
    font-size: 1.2rem;
    color: #b22222;
    font-weight: bold;
    margin: 25px 0;
}


/*その他
---------------------------------------------------------------------------*/
.ws {width: 48%;display: inline;}
.sh {display: none;}
.pc {display: block;}
	
.sp_br {
  display: none; /*768px以上では改行タグを無効に。*/
}
@media screen and (max-width: 768px) {
  .sp_br {
    display: block; /*768px未満で改行タグを有効に。*/

  }
}

	
