@charset "UTF-8";
/* LAST UPDATE */
body { display: none;}
*{margin: 0; padding: 0;}
*, *:before, *:after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; font-weight: 400;}
html,body{width: 100%; margin: 0; padding: 0; font-family:'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', sans-serif;}
body { display: none;}
body{ font-size: 3vw;}
p{margin: 0; font-size: 3vw; line-height: 1.5;}
a{color: #006bb6;}
@media screen and (min-width:896px), print { 
	html{margin: 0; padding: 0; min-width:1024px; font-size: 62.5% !important; }
    body{ font-size: 1.6rem;} 
    p{font-size: 1.6rem;}
}


/*お問い合わせエラー*/

#mp-main div.fieldset span.err {
	color: #880000;
}
#mp-main div.fieldset input.text.err {
	background-color: #fff8f8;
	border: 1px solid #aa6666;
}
#mp-main div.fieldset input.radio.err {
	background-color: #fff8f8;
	border: 1px solid #aa6666;
}
#mp-main div.fieldset input.checkbox.err {
	background-color: #fff8f8;
	border: 1px solid #aa6666;
}
#mp-main div.fieldset textarea.err {
	background-color: #fff8f8;
	border: 1px solid #aa6666;
}
#mp-main div.fieldset select.err {
	background-color: #fff8f8;
	border: 1px solid #aa6666;
}
#mp-main div.errs {
	background-image: url("../imgs/warning.png");
	background-repeat: no-repeat;
	color: #880000;
	margin-top: 1em;
	margin-bottom: 1em;
	padding: 0px 0px 0px 30px;
	min-height: 32px;
	height: auto !important;
	height: 32px;
}
#mp-main span.radioelement {
	margin-right: 1.8em;
	color: black;
}
#mp-main span.checkelement {
	margin-right: 1.8em;
	color: black;
}
/*お問い合わせエラーここまで*/

.pdf {padding: 0 40px 0 0px;background: url(images/common/pdf.gif) right top no-repeat;}
ul{margin: 0;padding: 0;}
ul li{list-style: none;}
.mb1{margin: 0 0 1em;}
.mb2{margin: 0 0 2em;}
.mb3{margin: 0 0 3em;}
.mb4{margin: 0 0 4em;}
.mb10{margin: 0 0 10px;}
.mb20{margin: 0 0 20px;}
.mb30{margin: 0 0 30px;}
.mb40{margin: 0 0 40px;}
.mb50{margin: 0 0 50px;}
.txt_red{ color: red;}
.txt_r{ text-align: right;}
.txt_b{font-weight: 700;}
.txt_c{text-align: center;}
.ml50{margin: 0 0 0 50px;}

.linkBtn{ width:300px; padding: 0.7em 0; background: #231815; color: #fff!important; display: block; text-align: center;}
.linkBtn a{ color: #fff!important;}
.linkBtn-s{ width:120px; padding: 0.7em 0; background: #231815; color: #fff!important; display: block; text-align: center;}
.linkBtn-m a{ color: #fff!important;}
.linkBtn-m{ width:200px; padding: 0.7em 0; background: #231815; color: #fff!important; display: block; text-align: center;}
.linkBtn-s a{ color: #fff!important;}

.clearfix:after { content: ""; clear: both; display: block;}
.cf:after { content: ""; clear: both; display: block;}

/* discList */
ul.discList { padding-left: 2em;}
ul.discList li { list-style-type: disc; margin-bottom: 0.5em;}
ul.discList li ul { padding-left: 2em;}
ul.discList li ul li { list-style-type: circle; margin-bottom: 0.5em;}

/* NoList */
ol.decimalList { padding-left: 1.2em;}
ol.decimalList li { list-style-type: decimal; margin-bottom: 0.5em; line-height:1.4;}
ol.decimalList li ol { padding-left: 2em;}
ol.decimalList li ol li { list-style-type: decimal; margin-bottom: 0.5em;}

.displayPc{display: none;}
.displaySp{display: block;}
@media screen and (min-width:896px), print {     
	.displayPc{display: block;}
	.displaySp{display: none;}
}



#wrapper{ margin: 0; padding: 0; overflow: hidden; }
header{ width: 100%; height: 65px; margin-bottom: 12%; /*padding:7% 5% 5% !important;*/ float: left;  position: relative; }
header:after { content: ""; clear: both; display: block;}
header > div { width: 100%; padding: 7% 5% 5%; display: block; background:rgba(255,255,255,0.95); position: fixed; top: 0; left: 0; z-index: 2000;}
header > div > div:last-of-type{margin: 0; transition: all 0.8s; transform: translateY(-100%);}
.show header > div > div:last-of-type{transform: translateY(0%);}
.show header > div { background:rgba(255,255,255,1); transform: translateY(0%);}
header > div > div:first-of-type {min-height: 40px; position: relative; z-index: 2000; }
@media screen and (min-width:896px), print {     
	header { width: 100%; height: 140px; margin: 0; padding: 0; background:rgba(255,255,255,0.95); border-bottom: 1px solid #898989; position: fixed; top: 0; left: 0; z-index: 2000;}
	header > div{width: 1000px; margin: 0 auto; padding: 0; position: static; background: none;}
    header > div > div:last-of-type{transition: all 0s; transform: translateY(0%);}
    header > div > div:first-of-type { min-height:inherit;}
    header > div > div:last-of-type { width: 660px; float: right;}
    header > div > div:last-of-type > div{ float: right;}
}


.header_btn{display: none;}
@media screen and (min-width:896px), print {
    .header_btn{margin: 25px 0 0; display: block; float: right;}
    .header_btn a{ width: 300px; padding: 12px 45px 10px 60px; font-size: 1.3rem; text-decoration: none;  background: #231815; color: #fff; display: block; float: right;  text-align: center;}    
    .header_btn a:hover{ opacity: 1; letter-spacing: 1px }
    .header_btn a span{ position: relative; display: inline-block;}
    .header_btn a span::before{width: 20px; height: 22px; background: url("images/mail.png") no-repeat; background-size: contain; content: ""; position: absolute; top: 1px; left: -28px; display: block;}
    .header_btn a span::after{width: 9px; height: 15px; background: url("images/arrow01.png") no-repeat; background-size: contain; content: ""; position: absolute; top: 1px; right: -25px; display: block;}
}


h1{width: 60%; margin: 0; float: left;  z-index: 2000;}
h1 a{ float: left; display: inline-block;}
h1 img{ width: 100%; height: auto; max-width: 259px; float: left}
h2{font-size: 11vw; text-align: center; font-weight: 700; }
h3{ margin: 0 0 1.5em; padding: .5em .5em; font-size: 6vw; text-align: left; font-weight: 700; background: #004ea2; color: #fff;}
h4{ margin: 0 0 1.5em; padding: 0 0 .2em; font-size: 4.5vw; text-align: left; font-weight: 700; color: #000; border-bottom: 1px solid #004ea2;}
h5{ margin: 0 0 .5em; padding: 0; font-size: 3.6vw; text-align: left; font-weight: 700; color: #000;}
section:after { content: ""; clear: both; display: block;}
@media screen and (min-width:896px), print {     
    h1{ width: 259px; margin: 45px 0 0; float: left;}
	h2{font-size: 4.8rem; }
	h3{font-size: 2.5rem; }
	h4{font-size: 2.0rem; }
	h5{font-size: 1.8rem; }
}


#burger{ width: 36px; height: 22px; content: ""; background:url("images/burger.jpg") no-repeat; background-size: contain; position: absolute; top: 15%; right: 0; display: block; z-index: 2000; cursor: pointer}
nav{width: 100%; height: 98vh; padding: 0; display: none; background: #fff; }
body.show #burger{ width: 33px; height: 33px; background:url("images/burger_close.jpg") no-repeat; background-size: contain;  top: 10%; right: 0; }
body.show nav{ display: block !important}
@media screen and (min-width:896px), print {    
    #burger{display: none}
    nav{ height: auto; display: block;}
}


nav ul {padding: 2.5% 20% 2.5%; float:left;}
nav ul li { width: 100%; float:left; text-align: center; font-size: 5.3vw;}
nav ul:nth-of-type(1) li:nth-of-type(1) { display: none;}
nav ul li a { width: 100%; margin: 0; padding: 3.2vh 0 2.5vh; text-decoration: none; float:left; color: #231815; display: block; border-bottom: 1px solid #666;}
nav ul li:last-of-type a {border-bottom: none; }
@media screen and (min-width:896px), print {    
    nav ul{margin: 30px 0 0; padding: 0; float: right;}
    nav ul li { width: auto; padding: 2px 33px; border-right: 1px solid #898989;}
    nav ul:nth-of-type(1) li:nth-of-type(1) { display: block;}
    nav ul li a { width: auto; margin: 0 ; padding: 0; font-size: 1.6rem; border-bottom: none;}
    nav ul li:last-of-type { padding: 2px 0 2px 33px; border-right: none;}
    nav ul li a:hover{ background: #fff100; opacity: 1; -webkit-transition: 0.1s ease-in-out; -moz-transition: 0.1s ease-in-out; -o-transition: 0.1s ease-in-out; transition: 0.1s ease-in-out;}
    a:hover, a img:hover{ opacity: 0.6; -webkit-transition: 0.1s ease-in-out; -moz-transition: 0.1s ease-in-out; -o-transition: 0.1s ease-in-out; transition: 0.1s ease-in-out;}
}


#nav_btn{ padding: 0 10% 5% !important;}
#nav_btn li a{ margin: 0 0 .5em; padding: 1.2em 2em 1em; font-size: 4.0vw; border-bottom: none}
#nav_btn li:nth-of-type(1) a{ background: #ccdbe4;}
#nav_btn li:nth-of-type(2) a{ background: #231815; color: #fff !important; position: relative;}
#nav_btn li:nth-of-type(2) a::before{width: 7%; height: 50%; background: url("images/mail.png") no-repeat; top: 40%; left: 11%; background-size: contain; position: absolute; content: ""; display:block;}
#nav_btn li:nth-of-type(2) a::after{width: 5%; height: 30%; background: url("images/arrow02.png") no-repeat; top: 40%; right: 11%; background-size: contain; position: absolute; content: ""; display:block;}


@media screen and (min-width:896px), print {
    #nav_btn{display: none;}
}


#content{width: 100%; float: left;}
#content:after { content: ""; clear: both; display: block;}
@media screen and (min-width:896px), print {
    #content{padding: 140px 0 0;}
}


#pagetop{ position:absolute; top: -40px; left: 42%;}
#pagetop a{display: inline-block;}
#pagetop img{width: 80px; height: auto;}
@media screen and (min-width:896px), print {
    #pagetop{display: none}
}


footer{ width: 100%; padding: 20% 10% 15%; background: #eef0f5; float: left; position: relative;}
footer:after { content: ""; clear: both; display: block;}
footer > div:after { content: ""; clear: both; display: block;}
footer address{font-style: normal; text-align: center; font-size: 2.5vw;}
#footer_logo{margin: 0 0 40px; text-align: center;}
#footer_logo img{ width: 100%; height: auto; max-width: 584px;}
#footer_logo_pc{ display: none;}
#footer_logo_sp{ margin: 0 0 30px; text-align: center;}
@media screen and (min-width:896px), print {
    footer{ padding: 130px 0 45px; }
    footer > div{ width: 1000px; margin: 0 auto;}
    footer address{font-size: 1.2rem; font-style: normal; text-align: right;}
    #footer_logo{margin: 0 0 40px; text-align: right;}
    #footer_logo_pc{ width: 100%; margin: 0 0 30px; display: block;}
    #footer_logo_pc:after { content: ""; clear: both; display: block;}
    #footer_logo_sp{ display: none;}
}


.footer_menu01, .footer_menu02{display: none;}
@media screen and (min-width:896px), print {   
    .footer_menu01{display: block;}
    .footer_menu01 > div{ width: 160px; margin: 0 50px 0 0; float: left;}
    .footer_menu01 > div:last-of-type{ margin: 0;}
    .footer_menu01 > div > p { margin: 0 0 20px; padding: 20px 0 0; font-size: 1.6rem; font-weight: 700; border-top: 1px solid #898989;}
    .footer_menu01 > div > ul li, .footer_menu01 > div > ul li a {margin: 0 0 13px; font-size: 1.3rem;}
    .footer_menu01 > div > ul li a{ text-decoration: none; color: #231815;}
    .footer_menu01 > div > ul li a:hover{ opacity: 1; text-decoration:underline;}
    .footer_menu02{display: block;}
    .footer_menu02 ul { margin: 30px 0; float: right; }
    .footer_menu02 ul li { margin: 0 0 0 20px; float: left; }
    .footer_menu02 ul li a{ padding: 0 0 0 12px; text-decoration: none; color: #000; font-size: 1.2rem; font-weight: 700; position: relative;}
    .footer_menu02 ul li a::before{content: url("images/footer_arrow.png"); position: absolute; top: 2px; left: 0;}
}

.footer_sns ul { display: flex; justify-content: center; margin: 4px auto 40px;}
.footer_sns ul li { margin: 0 15px; }
@media screen and (min-width:896px), print { 
	.footer_sns { position: absolute; margin-top: 36px; margin-bottom: 0; }
	.footer_sns ul { margin: 0;}
	.footer_sns ul li { float:left; margin: 14px 14px 0 14px; }
	.footer_sns ul li:first-of-type { margin-left: 0; }
	.footer_sns ul li img { width: 28px; height: 28px; }
}

.fastview { margin-bottom: 20%; padding: 0;}
.fastview .slick-slider img{ width:100%; height:auto;}
.fastview .slick-dots { bottom: -8%; }
.fastview .slick-dotted.slick-slider { margin-bottom: 0px; }
@media screen and (min-width:896px), print {     
    .fastview{ width: 1200px; margin:0 auto 123px; padding: 0;}
    .fastview .slick-dots { bottom: -9%; }
}

.top_slide_sp { position: absolute; }
.top_slide_pc { visibility: hidden; height: 0; }
@media screen and (min-width:896px), print {     
    .top_slide_sp { visibility: hidden; height: 0; }
    .top_slide_pc { visibility: visible;  height: auto;  }
}

.announce_covid{ margin: 14% 10% 15%; padding: 8% 5% 5%; border: 8px solid #c1d6ef;}
.announce_covid p{ font-family:'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', sans-serif; color: #00214b; font-size: 3.0vw; line-height: 1.5;}
.announce_covid p.announce_covid_midashi{ margin: 0 0 1em; padding: 0 0 0 30%; font-size: 4.2vw; font-weight: 700; line-height: 1.3; position: relative;}
.announce_covid p.announce_covid_midashi:before {width: 23%; height: 100%; content: ""; background: url("images/announce_covid_img.jpg") no-repeat; background-size: contain; display: block; position: absolute; top: -8%; left: 0;}
@media screen and (min-width:896px), print {     
    .announce_covid{ width: 1000px; margin: 0 auto 70px; padding: 25px 60px 30px 190px;}
    .announce_covid p{ font-size: 1.5rem;}
    .announce_covid p.announce_covid_midashi{ margin: 0 0 10px; padding: 0; font-size: 2.3rem;}
    .announce_covid p.announce_covid_midashi:before {width: 104px; height: 78px; top: 8px; left: -140px;}
}


#top_anime_sp, #top_anime_pc{display:none;}/*加藤さんがTOPページ触ったら削除*/
#top_anime{margin: 0 0 30%; padding: 0 5% 50%; position: relative;}
#top_anime:after { content: ""; clear: both; display: block;}
#top_anime > div > div {width: 32%; margin: 0 2% 3% 0; padding: 0; display: block; position: relative; text-decoration: none; float: left; }
#top_anime > div > div:last-of-type { margin: 0 0 3%;}
#top_anime > div > div > div {position: relative; z-index: 1000; cursor: pointer}
#top_anime > div > div > div:last-of-type{display: none;  }
#top_anime > div > div.opened > div:first-of-type{ display: none;}
#top_anime > div > div.opened > div:last-of-type{ display: block;}
#top_anime > div > div > div > img { width: 100%; height: auto; }
#top_anime > div > div + ul{ width: 100%; height: 100%; padding: 20% 0 0; /*padding: 20% 0 0;*/ position: absolute; top: 15%; left: 0; display: none; }
#top_anime > div > div.opened + ul{display: block;}
#top_anime > div > div.top_anime01 + ul { background:url("images/top_anime_bk01.jpg"); background-size: cover; animation: fadeIn 0.4s ease-in-out 0.0s 1 normal;}
#top_anime > div > div.top_anime02 + ul { background:url("images/top_anime_bk02.jpg"); background-size: cover; animation: fadeIn 0.4s ease-in-out 0.0s 1 normal;}
#top_anime > div > div.top_anime03 + ul { background:url("images/top_anime_bk03.jpg"); background-size: cover; animation: fadeIn 0.4s ease-in-out 0.0s 1 normal;}
@keyframes fadeIn {
    0% {opacity: 0.5}
    100% {opacity: 1}
}
#top_anime > div > div + ul:after { content: ""; clear: both; display: block;}
#top_anime > div > div + ul li a:hover { opacity:0.8;}
#top_anime > div > div + ul li a {width: 80%; margin: 0 10% 3%; padding: 1.3em 3em 1em 2.5em; background: #fff; text-decoration: none; display: block; font-size: 3vw; color: #000; position: relative; border: 1px solid #231815;}
#top_anime > div > div + ul li a::before{width: 5%; height: 33%; position: absolute; content: ""; display:block; background: url("images/arrow03.png") 0 0 no-repeat; background-size: contain; top: 37%; right: 4%;}
#top_anime > div > div + ul li:last-of-type a {margin: 0 10%;}
@media screen and (min-width:896px), print { 
    #top_anime{ height: 712px; margin: 0 0 100px; padding: 0; }
    #top_anime > div{width: 1000px; margin: 0 auto;}
    #top_anime > div:after { content: ""; clear: both; display: block;}
    #top_anime > div > div {width: 310px; margin: 0 35px 8px 0; }
    #top_anime > div > div:last-of-type { margin: 0 0 8px;}
    #top_anime > div > div > div > img { width: 310px; height: auto; }
    #top_anime > div > div + ul{ height: 560px; margin: 0; padding: 190px 0 0; position: absolute; top: 160px; left: 0; }
    #top_anime > div > div + ul li a {width: 772px; height: 74px; margin: 0 auto 15px; padding:25px 60px 0 30px; font-size: 2.1rem; }
    #top_anime > div > div + ul li a::before{width: 14px; height: 27px;  top: 24px; right: 20px; }
    #top_anime > div > div + ul li:last-of-type a {margin: 0 auto 15px;}

}




.top_pickup,
.top_view,
.top_news,
.top_contact{ width: 100%; margin: 0 0 50px; padding: 0;}
@media screen and (min-width:896px), print {     
    .top_pickup,
    .top_view,
    .top_news,
    .top_contact{  margin: 0 0 130px; padding: 0;}
}


.top_pickup h2,
.top_view h2,
.top_news h2,
.top_contact h2{ margin: 0 5% 2em; padding: 2% 0 4% 25%; font-size: 4.0vw; text-align: left; border-bottom: 1px solid #231815; line-height: 1; position: relative;}
@media screen and (min-width:896px), print {
    .top_pickup h2,
    .top_view h2,
    .top_news h2,
    .top_contact h2{width: 1000px; margin: 0 auto 2em; padding: 0 0 15px 115px; font-size: 1.7rem; }
}


.top_pickup h2 span,
.top_view h2 span,
.top_news h2 span,
.top_contact h2 span{ width: 100%; margin: 0 0 6%; padding: 0 0 4%; font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "Yu Mincho", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif; font-size: 7.0vw; font-weight: 700; display: block; border-bottom: 1px solid #231815; line-height: 1;}
@media screen and (min-width:896px), print {
    .top_pickup h2 span,
    .top_view h2 span,
    .top_news h2 span,
    .top_contact h2 span{margin: 0 0 15px; padding: 0 0 15px; font-size: 2.9rem;}
}


.top_pickup h2:before,
.top_view h2:before,
.top_news h2:before,
.top_contact h2:before{content: ""; display: block; position: absolute; background-size: contain !important;}
.top_pickup h2:before{width: 25%; height: 90%; background: url("images/top_pickup.jpg") 0 0 no-repeat; top: 0; left: 0; }
.top_view h2:before{width: 30%; height: 80%; background: url("images/top_view.jpg") 0 0 no-repeat; top: 5%; left: 0; }
.top_news h2:before{width: 20%; height: 80%; background: url("images/top_news.jpg") 0 0 no-repeat; top: 12%; left: 0; }
.top_contact h2:before{width: 20%; height: 80%; background: url("images/top_contact.jpg") 0 0 no-repeat; top: 15%; left: 0; }
@media screen and (min-width:896px), print {
    .top_pickup h2:before{width: 72px; height: 101px; top: -25px; left: 20px; }
    .top_view h2:before{width: 87px; height: 87px; top: -10px; left: 12px; }
    .top_news h2:before{width: 76px; height: 74px; top: -2px; left: 18px; }
    .top_contact h2:before{width: 89px; height: 81px; top: -11px; left: 8px; }
}


.top_pickup h2:after { content: ""; clear: both; display: block;}
.top_view h2:after { content: ""; clear: both; display: block;}
.top_news h2:after { content: ""; clear: both; display: block;}
.top_contact h2:after { content: ""; clear: both; display: block;}
.top_pickup > div, .top_view > div{ padding: 10% 0 20%; background: #eef0f5;}
@media screen and (min-width:896px), print {
    .top_pickup, .top_view{position: relative;}
    .top_pickup > div, .top_view > div{padding: 30px 0 0; background: none; position: relative;}
    .top_pickup > div::before, .top_view > div::before{ width: 4000px; height: 370px; content: ""; display: block; background: #eef0f5; position: absolute; top: 0; left: 0;}
}


.topslide01 { width: 322px; height: 410px; margin: 0 auto; box-shadow: 0px 0px 6px 0px #cdcdcd ;}
.topslide01:after { content: ""; clear: both; display: block; }
.topslide01 .slick-track { background: #eef0f5; display: block; }
.topslide01 .slick-slide { height: 420px;}
.topslide01 .slick-slide > a{ height: 408px; padding: 0; font-size: 3.5vw; background: #fff; float: left; text-decoration: none; color: #231815; display: block; }
.topslide01 .slick-slide span{width: 100%; margin: 0 0 .5em; font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "Yu Mincho", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif; font-size: 5.5vw; font-weight: 700; display:block; }
.topslide_img img{width: 100%; max-width: 322px; height: auto;}
.topslide_txt01, .topslide_txt02 {padding: 8%;}
.topslide01 .slick-dots { width: 120px; margin: 10px auto 0; display:block; position: static; bottom: auto; left: auto;}
.topslide01 .slick-dots li { margin: 0 10px; float: left;}
.topslide01 .slick-dots li button{ width: 20px; height: 20px; background: #999; color: #999; border: none; border-radius: 20px; font-size: 1vw;}
.topslide01 .slick-dots li.slick-active button{background: #005ead; color: #005ead;}
.topslide01 .slick-prev::before, .topslide01 .slick-next::before { display: none;}
.topslide01 .slick-prev, .topslide01 .slick-next { width: 14px; height: 27px; display: block;}
.topslide01 .slick-prev, .topslide01 .slick-prev:hover, .topslide01 .slick-prev:focus{width: 0;
height: 0;
border-style: solid;
border-width: 13.5px 14px 13.5px 0;
border-color: transparent #005ead transparent transparent; }
.topslide01 .slick-next, .topslide01 .slick-next:hover, .topslide01 .slick-next:focus{width: 0;
height: 0;
border-style: solid;
border-width: 13.5px 0 13.5px 14px;
border-color: transparent transparent transparent #005ead; }
.topslide01 .slick-prev{left: -17px}
.topslide01 .slick-next{right: -17px}

.topslide01 .slick-dots li button::before {display: none !important;}


@media screen and (min-width:896px), print { 
    .topslide01 { width: auto; box-shadow: 0px 0px 0px 0px #fff;}
    .topslide01 .slick-list { width: 1000px;  margin: 0 auto; }
    .topslide01 .slick-track {padding: 10px 0; background: none;}
    .topslide01 .slick-slide{ width: 322px !important; margin: 0 15px 0 0; box-shadow: 0px 0px 6px 0px #cdcdcd ;}
    .topslide01 .slick-slide a{margin: 0 15px 0 0; padding: 0; font-size: 1.5rem; float: left; display: block; background: #fff;}
    .topslide01 .slick-slide:nth-child(3n) { width: 322px !important; margin: 0 0;}
    .topslide01 .slick-slide:nth-child(3n) a{ margin: 0; }
    .topslide01 .slick-slide span{width: 100%; margin: 0 0 .5em;  font-size: 2.8rem; }
    .topslide01 .slick-slide:hover a{ opacity: 0.6; -webkit-transition: 0.4s ease-in-out; -moz-transition: 0.4s ease-in-out; -o-transition: 0.4s ease-in-out; transition: 0.4s ease-in-out;}
    .topslide_img{width: 322px; height: 247px; overflow: hidden;}
    .topslide01 .slick-slide:hover a img{transform: scaleX(1.01) scaleY(1.01) scaleZ(1.01); -webkit-transition: 0.4s ease-in-out; -moz-transition: 0.4s ease-in-out; -o-transition: 0.4s ease-in-out; transition: 0.4s ease-in-out;} 
    .topslide01 .slick-slide a img:hover{ opacity: 1; }
    .topslide_txt01 {padding: 35px 15px 0;}
    .topslide_txt02 {padding: 55px 15px 0;}
}



.top_news > div { padding: 0 10%;}
.top_news > div:after { content: ""; clear: both; display: block;}
.top_news dl dt{margin: 0 0 3%; font-size: 3.0vw;}
.top_news dl dd{margin: 0 0 5%; padding: 0 0 5%; font-size: 3.8vw; border-bottom: 1px solid #ccc;}
.top_news dl dd:last-of-type{margin: 0; padding: 0; border-bottom: none;}
.top_news dl dd a{ color: #000; text-decoration: none;}
@media screen and (min-width:896px), print {    
    .top_news dl {width: 760px; margin: 0 auto;}
    .top_news dl dt, .top_news dl dd{ font-size: 1.5rem;}
    .top_news dl dt{ width: 115px; margin: 0 ; float: left}
    .top_news dl dd{ margin: 0 0 24px 115px; padding: 0; border-bottom: none; }
    .top_news dl dd a:hover{ opacity: 1; text-decoration: underline;}
}


.top_contact > div { padding: 0 10%;}
.top_contact_img { margin: 4% 0 8%; padding: 0 0 4%; border-bottom: 1px solid #ccc;}
.top_contact_img:after { content: ""; clear: both; display: block;}
.top_contact_img li { margin: 0 0 4%;}
.top_contact_img li img{ width: 100%; height: auto; max-width: 350px;}
.top_contact_btn a { margin: 5% 0 0; padding: 1.2em 0 1em; font-size: 4.2vw; background: #231815; color: #fff; text-align: center; text-decoration: none; display:block; position: relative;}
.top_contact_btn a span{position: relative;}
.top_contact_btn a span::before{width: 15%; height: 80%; background: url("images/mail.png") no-repeat; top: 10%; left: -20%; background-size: contain; position: absolute; content: ""; display:block; }
.top_contact_btn a span::after{width: 10%; height: 80%; background: url("images/arrow02.png") no-repeat; top: 10%; right: -20%; background-size: contain; position: absolute; content: ""; display:block; }


@media screen and (min-width:896px), print {    
    .top_contact > div { width: 760px; margin: 0 auto; padding: 0;}
    .top_contact_img { margin: 20px 0 55px; padding: 0; border-bottom: none;}
    .top_contact_img li { width: 375px; margin: 0 ; padding: 0 25px 0 0; float: left; border-right: 1px solid #898989;}
    .top_contact_img li:last-child { width: 350px; padding: 0 0 0 25px; border-right: none;}
    .top_contact_img li img{ width: 350px; height: 39px; max-width:none;}
    .top_contact_btn a { width: 100%; margin: 20px 0 0; padding: 1.1em 5em 1em; font-size: 2.2rem; display: inline-block;}
    .top_contact_btn a span::before{width: 41px; height: 32px; background: url("images/mail.png") no-repeat; top:0; left: -70px; background-size: contain; position: absolute; content: ""; display:block; }
    .top_contact_btn a span::after{width: 14px; height: 25px; top: 1px; right:-40px; background-size: contain; position: absolute; content: ""; display:block;}
    .top_contact_btn a:hover{opacity: 1; letter-spacing: 2px;}
}


.topslide02{display: none !important;}
.top_footer_slide {width: 100%; margin: 0 0 30%; padding: 0 10%;}
.top_footer_slide:after { content: ""; clear: both; display: block;}
.top_footer_slide > div {width: 100%; margin: 0 0 4%; text-align: center;}
.top_footer_slide > div a img {width: 100%; height: auto;}
@media screen and (min-width:896px), print {
    .top_footer_slide{display: none;}
    .topslide02 {width: 890px; margin: 0 auto 40px; padding: 0; display: block !important;}
    .topslide02 .slick-track {padding: 10px 0;}   
    .topslide02 .slick-slide img{ width: 220px; height: auto; box-shadow: 0px 0px 4px 0px #cdcdcd;}
    .topslide02 .slick-slider {position: relative;}
    .topslide02 .slick-prev, .topslide02 .slick-next{ width: 14px; height: 27px; content: ""; display:block;  position: absolute; top: 35px; text-indent:100%; white-space:nowrap; overflow:hidden; border: none; }
    .topslide02 .slick-prev{ background: url("images/arrow04.png") no-repeat #fff; background-size: contain; }
    .topslide02 .slick-next{ background: url("images/arrow03.png") no-repeat #fff; background-size: contain; }
    .topslide02 .slick-prev{ left: -50px;}
    .topslide02 .slick-next {right: -50px;}
}



#bread_nav{ display: none; }
@media screen and (min-width:896px), print {        
    #bread_nav{ width: 1000px; margin: 55px auto 80px; padding: 0; display: block;}
    #bread_nav:after { content: ""; clear: both; display: block;}
    #bread_nav li, #bread_nav li a{ font-size: 1.4rem; display: inline-block; float: left; font-weight: 700; font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "Yu Mincho", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;}
    #bread_nav li a{ padding: 0 30px 0 0; position: relative;}
    #bread_nav li a::before{ width: 14px; height: 15px; display: block; content: ">"; font-weight: 700; position: absolute; color: #000; text-decoration: none; top: -1px; right: 1px;}
}


#subtitle01{margin: 10% 0 16%; padding: 0 10%; font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "Yu Mincho", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;}
#subtitle01 h2 { margin: 0 0 7%; }
#subtitle01 h2 span{ font-weight: 400;  background: #fff100;}
.subtitle01_txt{ margin: 0 0 8%;}
.subtitle01_txt p{ margin: 0 0 .8em; font-size: 3.2vw; }
.subtitle01_img_pc{display: none;}
.subtitle01_img_sp img{ width: 100%; height: auto;}
@media screen and (min-width:896px), print {
    #subtitle01{ width: 1000px; margin: 60px auto; padding: 0; }
    #subtitle01 h2{margin: 0 0 50px; text-align: left; font-size: 8.6rem; }
	#subtitle01 h2 span{ background: #fff100; -webkit-transition: all 0.5s ease; -moz-transition: all 0.5s ease; -o-transition: all 0.5s ease; transition: all  0.5s ease; }

    .subtitle01_txt{ margin: 0 0 30px; text-align: left; }
    .subtitle01_txt p{ font-size: 2.2rem; }
    .subtitle01_img_pc{width: 254px; margin: 0 100px 0 0 ; display: block; float: left;}
    .subtitle01_img_sp{display: none;}
}


#subtitle02{width: 100%; margin: 15% 0 6%; padding: 0 ; font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "Yu Mincho", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif; position: relative;}
#subtitle02::after{width: 100%; height: 1px; content: ""; display: block; background: #808080; position: absolute; bottom: 7px;}
#subtitle02 h2{ margin: 0 10%; text-align: left; font-size: 10vw; font-weight: 400; }
@media screen and (min-width:896px), print {    
    #subtitle02{width: 100%; margin: 0 0 40px; padding: 0;}
    #subtitle02::after{ display: none;}
    #subtitle02 h2{ width: 1000px; margin: 0 auto; text-align: left; font-size: 6.2rem; position: relative;}
    #subtitle02 h2::after{width: 5700px; height: 1px; content: ""; display: block; background: #808080; left: -5000px; bottom: 12px; z-index: -1; position: absolute;}
}


#subtitle02_lead{ margin: 0 0 10%; padding: 10% 10% 8%; background: #eef0f5;}
#subtitle02_lead .txt_big{ margin: 0 0 6%; font-size: 4.5vw; font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "Yu Mincho", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif; font-weight: 700; line-height: 1.3;}
#subtitle02_lead p{ font-size: 3.3vw; line-height: 1.8}
@media screen and (min-width:896px), print {
    #subtitle02_lead{ margin: 0 0 70px; padding: 0; }
    #subtitle02_lead > div{ width: 1000px; margin: 0 auto; padding: 40px 0;}
    #subtitle02_lead .txt_big{ margin: 0 0 25px; font-size: 3rem; }    
    #subtitle02_lead p{ font-size: 1.6rem;}
}


.subarticle01{ margin: 0 0 15%; padding: 0 10%;}
.subarticle01:after { content: ""; clear: both; display: block;}
.subarticle01 dl dt, .subarticle01 dl dd{width: 100%;}
.subarticle01 dl dt{margin: 0 0 5%; padding: .5em 0 .4em; font-size: 3.6vw; background: #1f528e; color: #fff; text-align: center; font-weight: 700; }
.subarticle01 dl dd p{ line-height: 1.8; font-size: 4.0vw;}
.subarticle01 dl dd .txt_big{ margin: 0 0 8%; font-size: 4.5vw; font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "Yu Mincho", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif; font-weight: 700; line-height: 1.3; }
.subarticle01 .subarticle01_img_sp { margin: 0 0 8% }
.subarticle01 .subarticle01_img_sp img{width: 100%; height: auto;}
.subarticle01 .subarticle01_img_pc{ width: 470px; float: right; display: none;}
@media screen and (min-width:896px), print {
    .subarticle01{width: 1000px; margin: 0 auto 45px; padding: 0;}
    .subarticle01 .subarticle01_img_sp{display: none}
    .subarticle01 .subarticle01_img_pc{display: block;}
    .subarticle01 dl {width: 490px; float: left; }
    .subarticle01 dl dt{ width: 276px; height: 35px; margin: 0 0 25px; padding: 10px 0 0; font-size: 1.6rem;}
    .subarticle01 dl dd .txt_big{ margin: 0 0 30px; font-size:2.6rem;  line-height: 1.3; }
    .subarticle01 dl dd p{font-size: 1.6rem;}
}


.subarticle02{ margin: 0 0 15%; padding: 0 10%;}
.subarticle02:after { content: ""; clear: both; display: block;}
.subarticle02 > dl > dt {margin: 0 0 5%; padding: .4em 0 .3em; font-size: 3.4vw; background: #1f528e; color: #fff; text-align: center; font-weight: 700;  }
.subarticle02 > dl > dd > div:after { content: ""; clear: both; display: block;}
.subarticle02 > dl > dd > div > dl{margin: 0 0 15%;}
.subarticle02 > dl > dd > div > dl > dt{ margin: 0 0 4%; font-size: 3vw; position: relative; }
.subarticle02 > dl > dd > div > dl > dt::after{ width: 100%; height: 1px; content: ""; display: block; border-bottom: 1px solid #898989; position: absolute; left: 0; bottom: 50%; z-index: -1}
.subarticle02 > dl > dd > div > dl > dt span{ padding: 0 10px 0 0; background: #fff; }
.subarticle02 > dl > dd > div > dl > dd img{ width: 100%; height: auto;}

@media screen and (min-width:896px), print {
    .subarticle02{ width: 1000px; margin: 0 auto; padding: 0;}
    .subarticle02 > dl > dd > div > dl > dt{}
    .subarticle02 > dl > dt{ width: 276px; height: 35px; margin: 0 0 25px; padding: 10px 0 0; font-size: 1.6rem;}
    .subarticle02 > dl > dd > div > dl{margin: 0 20px 20px 0; float: left;}
    .subarticle02 > dl > dd > div > dl:last-of-type{margin: 0 0 20px;}
    .subarticle02 > dl > dd > div > dl > dt{ margin: 0 0 10px;}
    .subarticle02 > dl > dd > div > dl > dt::after{ bottom: 15px}
    .subarticle02 > dl > dd > div > dl > dt span{ font-size: 1.4rem;}
    .subarticle02 > dl > dd > div > dl > dd img { width: auto; height: auto;}
}


.subarticle800, .subarticle900, .subarticle1000{ margin: 0 0 15%; padding: 0 10%;}
.subarticle800:after { content: ""; clear: both; display: block;}
.subarticle900:after { content: ""; clear: both; display: block;}
.subarticle800:after { content: ""; clear: both; display: block;}
@media screen and (min-width:896px), print {
    .subarticle800{ width: 800px; margin: 0 auto 100px; padding: 0;}
    .subarticle900{ width: 900px; margin: 0 auto 100px; padding: 0;}
    .subarticle1000{ width: 1000px; margin: 0 auto 100px; padding: 0;}
}


#subsection01{padding: 0 10% 30%;}
#subsection01 dl { border-bottom: 1px solid #808080; }
#subsection01 dl:after { content: ""; clear: both; display: block;}
#subsection01 dl dt{ padding: 1.6em 0 1.4em 10%; font-size: 4.2vw; cursor: pointer; border-top: 1px solid #808080; position: relative;}
#subsection01 dl dt::before{ width: 7%; height: 80%; background: url("images/arrow05.png") no-repeat; top: 35%; left: 0; background-size: contain; position: absolute; content: ""; display:block;}
#subsection01 dl dt.opened::before{ background: url("images/arrow06.png") no-repeat; background-size: contain; }
#subsection01 dl dd{ padding: 0 0 1.4em; display: none; }
#subsection01 dl dd ul { margin: 0 0 0 10%; }
#subsection01 dl dd ul li { margin: 0 0 .6em .7em; position: relative; color: #005ead; line-height: 1}
#subsection01 dl dd ul li:before { content: "・"; margin: 0; position: absolute; top: .1em; left: -1.0em;}
#subsection01 dl dd ul li:last-of-type { margin: 0 0 0 .7em;}
#subsection01 dl dd ul li a{ font-size: 3.5vw; text-decoration: none; color: #005ead; }
@media screen and (min-width:896px), print {        
    #subsection01{width: 1000px; margin: 0 auto; padding: 0 0 100px;}
    #subsection01 dl { width: 640px; float: left; }
    #subsection01 dl dt{ padding: 27px 0 23px 40px; font-size: 2.3rem; }
    #subsection01 dl dt::before{ width: 23px; height: 23px; top: 30px; left: 0;}
    #subsection01 dl dd{ padding: 0 0 30px;}
    #subsection01 dl dd ul { margin: 0 0 0 40px;}
    #subsection01 dl dd ul li { margin: 0 0 1.3em .7em; }
    #subsection01 dl dd ul li a{ font-size: 1.8rem;}    
}


#subsection_none{padding: 0 10% 30%;}
#subsection_none ul { border-bottom: 1px solid #808080; }
#subsection_none ul:after { content: ""; clear: both; display: block;}
#subsection_none ul li a{ width: 100%; padding:1.6em 0 1.4em 10%; cursor: pointer; border-top: 1px solid #808080; position: relative; font-size: 4.2vw; text-decoration: none; color: #000; display:block;  }
#subsection_none ul li a::before{ width: 7%; height: 80%; background: url("images/arrow05.png") no-repeat; top: 35%; left: 0; background-size: contain; position: absolute; content: ""; display:block;}
@media screen and (min-width:896px), print {
    #subsection_none{width: 1000px; margin: 0 auto; padding: 0 0 100px;}
    #subsection_none ul { width: 640px; float: left; }
    #subsection_none ul li a{ padding: 27px 0 23px 40px; font-size: 2.3rem; }
    #subsection_none ul li a::before{ width: 23px; height: 23px; top: 30px; left: 0;}
}


table.stripeTable{ border-collapse: collapse; width: 100%; margin: 0 0 1em;  border-top: 1px solid #e3e3e3;}
table.stripeTable th, table.stripeTable td{font-size: 3vw; line-height:1.6;}
table.stripeTable .thead th{ padding:0;}
table.stripeTable th { border-bottom: 1px solid #e3e3e3; padding: 1em 0.5em; text-align: right; white-space: nowrap; font-weight:bold;}
table.stripeTable td { width:80%; border-bottom: 1px solid #e3e3e3; padding: 1em 0.5em; }
table.stripeTable tr:nth-child(even) th, table.stripeTable tr:nth-child(even) td{ background: #f9fafb !important;}
table.stripeTable ul{ margin:0;}
@media screen and (min-width:896px), print {
    table.stripeTable{ width: 100%; margin: 0px 0px 15px 0px;}
    table.stripeTable th, table.stripeTable td{font-size: 1.6rem;}
    table.stripeTable th { padding: 1em;}
    table.stripeTable td {padding: 1em;}	
}


table.stripeTable02{ border-collapse: collapse; width: 100%; border-top: 1px solid #e3e3e3;}
table.stripeTable02 th, table.stripeTable02 td{font-size: 3vw; line-height:1.6;}
table.stripeTable02 .thead th{ padding:0;}
table.stripeTable02 th { border-bottom: 1px solid #e3e3e3; padding: 1em 0.5em; text-align: center; font-weight:bold;}
table.stripeTable02 td { border-bottom: 1px solid #e3e3e3; padding: 1em 0.5em; text-align: center;}
table.stripeTable02 tr:nth-child(even) th, table.stripeTable02 tr:nth-child(even) td{ background: #f9fafb !important;}
table.stripeTable02 ul{ margin:0;}
@media screen and (min-width:896px), print {
    table.stripeTable02{ width: 100%; margin: 0px 0px 15px 0px;}
    table.stripeTable02 th, table.stripeTable02 td{font-size: 1.6rem;}
    table.stripeTable02 th { padding: 1em;}
    table.stripeTable02 td {padding: 1em;}	
}


.entry_button input{  margin: 0 auto; padding: 1em; background: #231815; color: #fff; border: none; display: block;}
@media screen and (min-width:896px), print {
    .entry_button input:hover{opacity: 0.6; -webkit-transition: 0.1s ease-in-out; -moz-transition: 0.1s ease-in-out; -o-transition: 0.1s ease-in-out; transition: 0.1s ease-in-out;}
}


.messageImg01{width: 160px; margin: 0 auto; line-height:1.3; margin-bottom:20px; text-align:center;}
.messageImg01 img{margin-bottom:5px;}
@media screen and (min-width:896px), print {
    .messageImg01{width: 160px; margin: 0 20px 20px 0; float: left; text-align:left;}
}


.conceptImg01{width: 100%; margin: 0 0 20px; text-align: center;}
.concept{ margin: 0 0 5em;}
.conceptTitle{ margin: 0 0 16px; padding: 8px 0 8px 10px; font-size: 4.5vw; line-height: 1; background-color:#fff100; font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "Yu Mincho", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif; font-weight: 700;}
.conceptUl { margin: 0 0 0 1.5em; }
.conceptUl li{ margin: 0 0 1em; list-style: disc;}
.conceptUl li:last-of-type{ margin: 0;}

@media screen and (min-width:896px), print {
    .conceptImg01{width: 160px; margin: 0 20px 20px 0; float: left; text-align: left;}
    .conceptTxt{ width: 620px; float: right;}
    .concept{ width: 640px; margin: 0 0 5em; padding: 1.5em; float: right;}
    .conceptTitle{ font-size: 2.2rem;}
    .conceptUl { margin: 0 0 0 1.5em; }
    .conceptUl li{ margin: 0 0 1em; list-style: disc;}
}

/*メールマガジンバックナンバーここから*/
.newsletter_list > div { padding: 0 10%;}
.newsletter_list > div:after { content: ""; clear: both; display: block;}
.newsletter_list dl dt{margin: 0 0 3%; font-size: 3.0vw;}
.newsletter_list dl dd{margin: 0 0 5%; padding: 0 0 5%; font-size: 3.8vw; border-bottom: 1px solid #ccc;}
.newsletter_list dl dd:last-of-type{margin: 0; padding: 0; border-bottom: none;}
.newsletter_list dl dd a{ color: #000; text-decoration: none;}
@media screen and (min-width:896px), print {    
    .newsletter_list dl {width: 760px; margin: 0 auto;}
    .newsletter_list dl dt, .newsletter_list dl dd{ font-size: 1.5rem;}
    .newsletter_list dl dt{ width: 115px; margin: 0 ; float: left}
    .newsletter_list dl dd{ margin: 0 0 24px 115px; padding: 0; border-bottom: none; }
    .newsletter_list dl dd a:hover{ opacity: 1; text-decoration: underline;}
}
.newsletter_list{ width: 100%; margin: 0 0 50px; padding: 0;}
@media screen and (min-width:896px), print {     
    .newsletter_list{  margin: 0 0 130px; padding: 0;}
}
article.mailmaga_txt p{margin-bottom:1em;}

/*メールマガジンバックナンバーここまで*/

.layoutMovie{
    position:relative;
    width:100%;
    height:0;
    padding-top:56%;
}
.layoutMovie iframe{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
}
.layoutMovie-2 li{margin-bottom:1em; width:100%; height:auto;}
.layoutMovie-2 li iframe{
    width:100%; height:100%;
}
.layoutMovie-3 li{margin-bottom:2em; width:100%; height:auto; border:solid 1px #ccc; font-size:12px;
}
.layoutMovie-3 li video{
    width:100%; height:100%;
}
.layoutMovie-3 li img{ width:100%; height:auto;
}
.movie-title {font-size:18px !important; font-weight:bold; color:#04387b; text-align:center; margin: 10px 0 10px 0;}
@media screen and (min-width:896px), print {
.layoutMovie {
    width:700px;
    padding-top:394px;
    margin:0 auto;}
.layoutMovie-2 li{
    width:450px; height:250px;
    margin:0 25px 15px 0; float:left;}
.layoutMovie-2 iframe{
    width:450px; height:250px;}
.layoutMovie-3 li{
    width:300px; height:auto;
    margin:0 20px 50px 0; float:left;}
.layoutMovie-3 video{
    width:300px; height:179px;}
}

.layoutMap  {width: 100%; position: relative; padding-top: 77.3993%;}
.layoutMap iframe {position: absolute; top: 0; left:0; width: 100%; height:100%;}
@media screen and (min-width:896px), print {
	.layoutMap  {width: 656px; height: 500px; padding: 0;}
}

ul.ul_proof { margin-left: 1em; text-indent: -1em; }
.proof-title { font-size: 16px !important; font-weight:bold; color:#04387b;margin: 10px 0 10px 0; } 
.proof-title-red { font-size: 16px !important; font-weight: bold; color: red !important; text-align: center; margin: 10px 0 10px 0; }
.proof-p { padding: 0 0.8em; text-align: left; }
.proofreading-flex { display: flex; flex-direction: column; width: 100%; }
.proofreading-box { border: solid 1px #ccc; padding: 0 1em 1em; }
.proofreading-box:first-of-type { margin: 0 0 1em; }
.proofreading-box img { width: 100%; height: auto; }
.proofreading-box-p { margin-bottom: 1em; }
.proof_pt10 { padding-top: 10px; }
.proof-icon01 { max-width: 160px !important; height: auto !important; margin: 1em 0; }
.proof-icon02 { max-width: 160px !important; height: auto !important; margin: 1em 0; }
.proof-img { width: 100%; height: auto; }
.mb0 { margin-bottom: 0 !important; }
@media screen and (min-width:896px), print {
.proof-title { font-size:18px !important; } 
.proof-title-red { font-size: 18px !important; }
dl.proof-title-big { width: 100% !important; }
.proof-p { padding: 0 0.5em; }
.proofreading-flex { flex-direction: row; }
.proofreading-box { width: 46%; padding: 0 1em 1em;}
.proofreading-box:first-of-type { margin: 0 1.6em 0 0; }
.proofreading-box img { width: 350px; height: 210px; }
.proofreading-box-p { margin: 0; height: 82px; }
.proof-img { width: 660px; height: auto; }
.proof-icon01 { margin: 2em 0; }
.proof-icon02 { margin: 0 0 2em; }
}

.layoutImg2 img{ width: 100%; height:auto;}
.layoutImg-r img{ width: 100%; height:auto;}
.layoutImg-l img{ width: 100%; margin:0 auto;}
.layoutImg-l-nc{ width: 100%; margin:0 auto;}
.layoutImg-l-nc img{ display: block; margin:0 auto;}
.layoutImg-l-nc2{ width: 100%; margin-bottom:10px;}
.layoutImg-l-nc2 img{ display: block; margin:0 auto;}
.layoutImg-l-nc3{ width: 100%; margin-bottom:10px;}
.layoutImg-l-nc3 img{ display: block; margin:0 auto;}
.layoutImg-l-nc4 img{ display: block; margin:0 auto;}
.layoutImg-l-nc5 img{ display: block; margin:0 auto;}
.layoutImg-r-nc{ width: 100%; margin-bottom:10px;}
.layoutImg-r-nc img{ display: block; margin:0 auto;}
.layoutImg-r-nc2{ width: 100%; margin-bottom:10px;}
.layoutImg-r-nc2 img{ display: block; margin:0 auto;}
.layoutImg-r40{ width: 100%; margin-bottom:10px;}
.layoutImg-r40 img{width: 100%; height: auto; margin:0 auto;}
.layoutImg-r30{ width: 100%; margin-bottom:10px;}
.layoutImg-r30 img{ width: 100%; height: auto; display: block; margin:0 auto;}
.layoutImg-nc{ width: 100%; margin-bottom:10px;}
.layoutImg-nc img{ display: block; margin:0 auto;}
.layoutImg img{ width: 100%; height:auto;}
.layoutImg:after { content: ""; clear: both; display: block;}
.layoutImg-c img{ width: 100%; height:auto;}
.layoutImg-c200 img{ width: 200px; height:auto; margin:0 auto; display: block;}
.layoutImg2.layoutImg360 img{ width: 100%; height:auto;}
.layoutImg260 img{ width: 100%; height:auto;}
.layoutImg360 img{ width: 100%; height:auto;}
.layoutImg400 img{ width: 100%; height:auto;}
.layoutImg520 img{ width: 100%; height:auto;}
.layoutImg560 img{ width: 100%; height:auto;}
.layoutImg600 img{ width: 100%; height:auto;}
.layoutImg620 img{ width: 100%; height:auto;}
.layoutImg630 img{ width: 100%; height:auto;}
.layoutImg640 img{ width: 100%; height:auto;}
.layoutImg660 img{ width: 100%; height:auto;}

@media screen and (min-width:896px), print {     
.layoutImg2{ display:block;}
.layoutImg-r{width: 30%; margin:0 0 15px 15px; float:right; display:block;}
.layoutImg-l{width: 30%; margin:0 15px 15px 0; float:left; display:block;}
.layoutImg-l-nc{width: 25%; margin:0 15px 15px 0; float:left; display:block;}
.layoutImg-l-nc2{width: 25%; margin:0 45px 15px 0; float:left; display:block;}
.layoutImg-l-nc3{width: 25%; margin:0 60px 15px 0; float:left; display:block;}
.layoutImg-l-nc4{width: 20%; margin:0 15px 15px 0; float:left; display:block;}
.layoutImg-l-nc5{width: 15%; margin:0 15px 15px 0; float:left; display:block;}
.layoutImg-r-nc{width: 25%; margin:0 0 15px 15px; float:right; display:block;}
.layoutImg-r-nc2{width: 30%; margin:0 0 15px 15px; float:right; display:block;}
.layoutImg-r40{width: 45%; margin:0 0 15px 15px; float:right; display:block;}
.layoutImg-r30{width: 35%; margin:0 0 15px 15px; float:right; display:block;}
.layoutImg-nc{margin:0 auto; display:block;}
.layoutImg{width: 700px;}
.layoutImg-c{width: 700px; display:block; margin:0 auto; margin-bottom:1em;}
.layoutImg-c200{width: 200px; display:block; margin:0 auto;}
.layoutImg260{ width: 260px;}
.layoutImg360{ width: 360px;}
.layoutImg400{ width: 400px;}
.layoutImg400{ width: 400px;}
.layoutImg560{ width: 560px;}
.layoutImg600{ width: 600px;}
.layoutImg620{ width: 620px; display:block; margin:0 auto; margin-bottom:1em;}
.layoutImg630{ width: 630px; display:block; margin:0 auto; margin-bottom:1em;}
.layoutImg640{ width: 640px;}
.layoutImg660{ width: 660px;}
}

.layoutImg-2 { margin-bottom:2em;}
.layoutImg-2 li img{ width: 100%; height:auto; margin-bottom:0.2em;}
.layoutImg-2:after { content: ""; clear: both; display: block;}
.layoutImg-2-250 li{ margin-bottom:2em;}
.layoutImg-2-250 li img{ width: 100%; height:auto; margin-bottom:0.2em;}
.layoutImg-2-250:after { content: ""; clear: both; display: block;}
.layoutImg-2-278 li{ margin-bottom:2em;}
.layoutImg-2-278 li img{ width: 100%; height:auto; margin-bottom:0.2em;}
.layoutImg-2-278:after { content: ""; clear: both; display: block;}
.layoutImg-2-290 li{ margin-bottom:2em;}
.layoutImg-2-290 li img{ width: 100%; height:auto; margin-bottom:0.2em;}
.layoutImg-2-290:after { content: ""; clear: both; display: block;}
.layoutImg-2-300 li{ margin-bottom:2em;}
.layoutImg-2-300 li img{ width: 100%; height:auto; margin-bottom:0.2em;}
.layoutImg-2-300:after { content: ""; clear: both; display: block;}
.layoutImg-2-nc li img{ display: block; margin:0 auto; margin-bottom:0.7em;}
.layoutImg-2-nc:after { content: ""; clear: both; display: block;}
.layoutImg-2-nc2 li img{ display: block; margin:0 auto; margin-bottom:0.7em;}
.layoutImg-2-nc2:after { content: ""; clear: both; display: block;}
.layoutImg-2-pp li img{ width: 100%; margin:0 auto; margin-bottom:1em;}
.layoutImg-2-pp:after { content: ""; clear: both; display: block;}
.layoutImg-2-340 li{ margin-bottom:2em;}
.layoutImg-2-340 li img{ width: 100%; height:auto; margin-bottom:0.2em;}
.layoutImg-2-340:after { content: ""; clear: both; display: block;}
.layoutImg-2-450 li{ margin-bottom:2em;}
.layoutImg-2-450 li img{ width: 100%; height:auto; margin-bottom:0.2em;}
.layoutImg-2-450:after { content: ""; clear: both; display: block;}
.layoutImg-2-pet li{ margin-bottom:2em;}
.layoutImg-2-pet li img{ width: 100%; height:auto; margin-bottom:0.2em;}
.layoutImg-2-pet:after { content: ""; clear: both; display: block;}
.layoutImg-3 li{ margin-bottom:2em;}
.layoutImg-3 li img{ width: 100%; height:auto; margin-bottom:0.2em;}
@media screen and (min-width:896px), print {     
.layoutImg-2-250 li{ width: 250px; float: left; margin: 0 50px 0 0;}
.layoutImg-2-278 li{ width: 278px; float: left; margin: 0 50px 0 0;}
.layoutImg-2-278 li{ width: 278px; float: left; margin: 0 50px 0 0;}
.layoutImg-2-290 li{ width: 290px; float: left; margin: 0 50px 20px 0;}
.layoutImg-2-300 li{ width: 300px; float: left; margin: 0 30px 20px 0;}
.layoutImg-2-340 li{ width: 340px; float: left; margin: 0 50px 20px 0;}
.layoutImg-2-450 li{ width: 450px; float: left; margin: 0 50px 20px 0;}
.layoutImg-2-pet li{ width: 480px; float: left; margin: 0 20px 20px 0;}
.layoutImg-2-pet li img{ width: 375px;}
.layoutImg-2-nc li{ width: 23%; float: left; margin: 0 50px 20px 0;}
.layoutImg-2-nc2 li{ width: 30%; float: left; margin: 0 50px 20px 0;}
.layoutImg-2-pp li{ width: 400px; float: left; margin: 0 50px 20px 0;}
.layoutImg-3 li{ width: 230px; float: left; margin: 0 50px 20px 0;}
.layoutImg-3 li img{ margin-bottom:5px;}
}

.layoutImg01{ margin: 0 0 1%; padding: 0 1%;}
.layoutImg01:after { content: ""; clear: both; display: block;}
.layoutImg01 dl dt, .layoutImg01 dl dd{width: 100%; display: block;}
.layoutImg01 .layoutImg01_img_sp { display:block; margin:0 auto;}
.layoutImg01 .layoutImg01_img_sp img{width: 100%; height:auto; max-width:300px;}
.layoutImg01 .layoutImg01_img_pc{display: none;}
.layoutImg01 .layoutImg02_img_sp { display:block;}
.layoutImg01 .layoutImg02_img_sp img{width: 35%; height:auto; max-width:170px; min-width:90px;}
.layoutImg01 .layoutImg02_img_pc{display: none;}
.layoutImg01 .layoutImg03_img_sp { margin: 0 0 8% ;}
.layoutImg01 .layoutImg03_img_sp img{width: 40%; height:auto; max-width:144px;}
.layoutImg01 .layoutImg03_img_pc{display: none;}
@media screen and (min-width:896px), print {
    .layoutImg01{width: 1000px; margin: 0 auto 45px; margin: 0;}
    .layoutImg01 .layoutImg01_img_sp{display: none}
    .layoutImg01 .layoutImg01_img_pc{display: block;}
    .layoutImg01 .layoutImg02_img_sp{display: none}
    .layoutImg01 .layoutImg02_img_pc{display: block;}
    .layoutImg01 .layoutImg02_img_pc img{margin-left:50px; }
    .layoutImg01 .layoutImg03_img_sp{display: none}
    .layoutImg01 .layoutImg03_img_pc{display: block;}
    .layoutImg01 dl {width: 700px; float: left; }
}

.diversityImg02 img,
.diversityImg03 img,
.diversityImg04 img,
.diversityImg05 img,
.diversityImg06 img{width: 100%; height:auto; margin:0 auto; display: block;}
.diversityImg02 p,
.diversityImg03 p,
.diversityImg04 p,
.diversityImg05 p,
.diversityImg06 p{width: 100%; text-indent:0 !important;}
.diversityImg03{display:none;}
.diversityImg03_sumaho{ text-align:center; margin-bottom:2em;}

@media screen and (min-width:896px), print {     
.diversityImg02,
.diversityImg04{ width:280px; display:block; float:left;}
.diversityImg03{padding:170px 30px 0; display:block; float:left;}
.diversityImg03_sumaho{display:none;}
.diversityImg02 img{width:280px;}
.diversityImg03 img{width:31px;}
.diversityImg04 img{width:280px;}
.diversityImg05 img,
.diversityImg06 img{width:280px; height:auto; border: solid 1px #e3e3e3; padding: 2px;}
.diversityImg05{width:280px; float:left; margin-right:50px;}
.diversityImg06{width:280px; float:left; padding-top:50px;}
}


.sdgs_torikumi {
	display: flex;
	justify-content: space-between;
	flex-wrap:wrap;
	width: 100%;
}

.sdgs_torikumi > div {
	width: 48%;
	margin-bottom: 2em;
}

.sdgs_torikumi > div img {
	width: 100%;
	height: auto;
}

@media screen and (min-width:896px), print {
.sdgs_torikumi > div { 
	width: 31.3%;
}
.sdgs_mb4 {
	margin-bottom: 4em!important;
}
}

.flow_anchor{
	width: 98%;
	margin:0 auto 2em;
	border: 1px solid #e3e3e3;
	padding: 1%;
	background-color: #f9fafb;
}
.flow_anchor p {
	text-align: left;
}
@media screen and (min-width:896px), print {
.flow_anchor {
	width: 800px;
	text-align: center;
	margin-bottom: 15px;
	border: 1px solid #e3e3e3;
	padding: 5px;
	background-color: #f9fafb;
}
.flow_anchor p {
	padding: 0;
	text-indent:0 !important;
	text-align: center !important;
}

}

.q { color: #004da1; margin-bottom: 0.5em !important; font-weight: 700; padding-left: 2em !important; text-indent: -2em !important;}
.a { margin: 0 0 30px 0 !important; }

/*printflow_dl*/

.printflow{ width: 100%;}
.printflow > dl dt{ padding: .6em 1em .5em; font-size: 3.5vw; font-weight: 700; background: #004ea2; color: #fff; line-height: 1; border-radius: 40px}
.printflow > dl dd{ padding: .3em .5em .5em;}
.printflow > dl dd > p{ margin: 0 0 .4em .5em; font-size: 3.4vw;}
.printflow > dl dd > ul { margin: 0 0 .4em .5em;}
.printflow > dl dd > ul > li{ margin: 0 0 .4em 1.1em; font-size: 3.2vw; list-style:circle;}
.printflow > dl + p { margin: 0 0 4em; padding: .6em 1em .5em; font-size: 3.5vw; font-weight: 700; background: #004ea2; color: #fff; line-height: 1; border-radius: 40px }


@media screen and (min-width:896px), print {
    .printflow { width: 340px; float: left;}
    .printflow:first-of-type { margin: 0 120px 0 0; }
    .printflow > dl dt{ font-size: 1.7rem; line-height: 1;}
    .printflow > dl dd{ padding: .8em .5em 1.5em;}
    .printflow > dl dd > p{ font-size: 1.7rem;}
    .printflow > dl dd > ul > li{font-size: 1.5rem;}
    .printflow > dl + p { font-size: 1.7rem;}
}


.adoption_list{margin: 0 0 70px; padding: 0;}
.adoption_list li a{ text-decoration: none; color: #000;}
.adoption_list > li { margin: 0 0 1.2em 1em; font-size: 3vw; text-indent: -1em;}
.adoption_list > li > a {padding: 0 0 0 .9em; position: relative; font-weight: 700; }
.adoption_list > li > a:before { width: .5em; height: .5em; content: ""; display: block; position: absolute; top: .4em; left: 0; background:#004ea2 }
@media screen and (min-width:896px), print {
    .adoption_list:first-of-type {margin: 0 110px 70px 0;}
    .adoption_list > li { font-size: 1.7rem;}
    .adoption_list > li > a {padding: .5em .5em .5em 1.1em; }   
	.adoption_list > li > a:before { top: 1em; left: 0; }

}


.sitemap_list{margin: 0; padding: 0;}
.sitemap_list li a{ text-decoration: none; color: #000;}
.sitemap_list > li { margin: 0 0 1em; font-size: 3.4vw;}
.sitemap_list > li > a {padding: 2.2%; font-weight: 700; color: #fff; background: #004ea2; display:block; line-height: 1; }
.sitemap_list > li > ul{ margin: 1em 0 0 .6em;}
.sitemap_list > li > ul > li { margin: 0 0 1.2em; font-size: 3vw;}
.sitemap_list > li > ul > li:last-of-type { margin: 0 0 1.6em;}
.sitemap_list > li > ul > li > a {padding: 0 0 0 1.4em; position: relative; font-weight: 700;}
.sitemap_list > li > ul > li > a:before { width: .5em; height: .5em; content: ""; display: block; position: absolute; top: 0.4em; left: 0; background:#004ea2 }
.sitemap_list > li > ul > li > ul{ margin: 1em 0 0 2em;}
.sitemap_list > li > ul > li > ul > li{ margin: 0 0 .7em 0.5em; font-size: 3vw; list-style:circle;}
.sitemap_list > li > ul > li > ul > li:last-of-type { margin: 0 0 1.6em 0.5em;}
.sitemap_list > li > ul > li > ul > li a{ font-weight: 400;}
@media screen and (min-width:896px), print {
    .sitemap_list {width: 400px; float: left;}
    .sitemap_list:first-of-type {margin: 0 110px 0 0;}
    .sitemap_list > li { font-size: 1.7rem;}
    .sitemap_list > li > a {padding: .5em; }   
    .sitemap_list > li > ul > li { font-size: 1.6rem;}
    .sitemap_list > li > ul > li > ul > li{ font-size: 1.4rem;}   
}


ul.searchResult {padding-left:20px;}
ul.searchResult li { margin: 0 0 2em; list-style-type: disc;}
ul.searchResult > li, ul.searchResult > li > a { font-size: 4vw; color: #000; text-decoration: underline;}
ul.searchResult > li > a:hover{ opacity: 0.7;}
ul.searchResult > li { margin: 0 0 1.5em; line-height: 1.3;}
@media screen and (min-width:896px), print {
    ul.searchResult { margin: 0 0 7em;}
    ul.searchResult > li, ul.searchResult > li > a { font-size: 1.6rem; }
}




.pager{ margin: 0 0 5em; text-align: center;}
.pager:after { content: ""; clear: both; display: block;}
.pager > .pager-inr{ display: inline-block; }
.pager > .pager-inr > p, .pager > .pager-inr > ul > li, .pager > .pager-inr > ul > li > a{font-weight: 700; font-size: 3.3vw; }
.pager > .pager-inr > p { margin: 0 0 2em; font-weight: 700; text-align: center;}
.pager > .pager-inr > ul { width: 100%; }
.pager > .pager-inr > ul:after { content: ""; clear: both; display: block;}
.pager > .pager-inr > ul > li { width: auto; display: block; margin: 0 .3em; float: left;}
.pager > .pager-inr > ul > li, .pager > .pager-inr > ul > li > a { float: left; display: block;}
.pager > .pager-inr > ul > li:first-of-type { margin: 0;}
.pager > .pager-inr > ul > li:last-of-type { margin: 0; }
.pager > .pager-inr > ul > li > a { width: 2em; padding: .5em 0; text-align: center; text-decoration: none; background: #231815; color: #fff;}

.pager > .pager-inr > ul > li:nth-of-type(1), 
.pager > .pager-inr > ul > li:nth-of-type(2), 
.pager > .pager-inr > ul > li:nth-last-of-type(1), 
.pager > .pager-inr > ul > li:nth-last-of-type(2),
.pager > .pager-inr > ul > li:nth-of-type(1) a, 
.pager > .pager-inr > ul > li:nth-of-type(2) a, 
.pager > .pager-inr > ul > li:nth-last-of-type(1) a, 
.pager > .pager-inr > ul > li:nth-last-of-type(2) a {
    text-align: center; font-size: 6vw; }

.pager > .pager-inr > ul > li:nth-of-type(1), 
.pager > .pager-inr > ul > li:nth-of-type(2), 
.pager > .pager-inr > ul > li:nth-last-of-type(1), 
.pager > .pager-inr > ul > li:nth-last-of-type(2) { 
    width: 1em; padding: 0; color: #999;}

.pager > .pager-inr > ul > li:nth-of-type(1) a, 
.pager > .pager-inr > ul > li:nth-of-type(2) a, 
.pager > .pager-inr > ul > li:nth-last-of-type(1) a, 
.pager > .pager-inr > ul > li:nth-last-of-type(2) a {
    width: 100%; padding: 0; background: #fff; color: #231815; }

.pager > .pager-inr > ul > li > span.current { width: 2em; padding: .5em 0; text-align: center; text-decoration: none; border: 1px solid ; color: #231815; display: block; }

@media screen and (min-width:896px), print {
    .pager > .pager-inr > p, .pager > .pager-inr > ul > li, .pager > .pager-inr > ul > li > a{font-size: 1.6rem; }
    .pager > .pager-inr > ul > li { width: auto; display: block; margin: 0 1em; float: left;}
    
    .pager > .pager-inr > ul > li:nth-of-type(1), 
    .pager > .pager-inr > ul > li:nth-of-type(2), 
    .pager > .pager-inr > ul > li:nth-last-of-type(1), 
    .pager > .pager-inr > ul > li:nth-last-of-type(2),
    .pager > .pager-inr > ul > li:nth-of-type(1) a, 
    .pager > .pager-inr > ul > li:nth-of-type(2) a, 
    .pager > .pager-inr > ul > li:nth-last-of-type(1) a, 
    .pager > .pager-inr > ul > li:nth-last-of-type(2) a {
        font-size: 2.6rem; }

    }

#contactfoam{ margin: 0 0 30%;}
#contactfoam:after { content: ""; clear: both; display: block;}
#contactfoam dl{ width: 100%; margin: 0 0 1em; }
#contactfoam dl:after { content: ""; clear: both; display: block;}
#contactfoam dt, #contactfoam dd, #contactfoam ul li, #contactfoam input[type="text"], #contactfoam textarea{ width: 100% !important; font-size:3.3vw;}
#contactfoam dt{ padding: .6em .6em .6em ; background: #eef0f5; color: #000; line-height: 1; font-weight: 700; }
#contactfoam dd{ padding: 1em .6em; min-height:4.5em;}
#contactfoam dd span { width: 100%; margin: 0 0 .6em; float: left; display: block; color: #888; font-size:2.8vw;}
#contactfoam dd ul li{ margin: 0 0 .5em; }
#contactfoam input, #contactfoam textarea{ padding: .5em .5em .4em; border: 1px solid #555; }
#contactfoam .submit{ width: 200px; margin: 0 auto; padding: 1em 0; background: #231815; color: #fff; display: block; text-align: center; }
#contactfoam .submit2 > .btn_back, #contactfoam .submit2 > .btn_send{ width: 48%; padding: 1em 0; background: #231815; color: #fff; display: block; text-align: center; font-size: 3.3vw; float: left; }
#contactfoam .submit2 > .btn_back{ margin: 0 4% 0 0; background: #fff; border: 1px solid #231815; color: #231815;}


@media screen and (min-width:896px), print {
    #contactfoam{ margin: 0 0 60px;}
    #contactfoam dl{ width: 800px; margin: 0 0 30px; background: #eef0f5; border-bottom: 1px solid #000; }
    #contactfoam dt, #contactfoam dd, #contactfoam ul li, #contactfoam input[type="text"], #contactfoam textarea{ font-size:1.6rem;}
    #contactfoam dt{width: 200px !important; margin: 0; padding: 1.5em 1em; float: left; border-top: 1px solid #000;}
    #contactfoam dt:first-of-type{border-top: 1px solid #000;}
    #contactfoam dd{width: 600px !important; min-height:70px; margin: 0 0 0 200px; padding: 1.5em 1em; background: #fff; border-top: 1px solid #000;}
    #contactfoam dd span { font-size:1.4rem;}
    #contactfoam .submit{ font-size:1.6rem;}
    #contactfoam .submit2{ width: 420px; margin: 0 auto;}
    #contactfoam .submit2 > .btn_back, #contactfoam .submit2 > .btn_send{width: 200px; font-size:1.6rem;}
    #contactfoam .submit2 > .btn_back{margin: 0 20px 0 0;}
}
.pc {display:none;}

@media screen and (min-width:896px), print {
.pc {display:block;}
}

.adoption_banner {
    float: left;
    margin-top: 50px;
 }
 .adoption_banner a {
     display: block;
 }