﻿@charset "utf-8";
/*******************************************/
/* main                                    */
/*******************************************/

/* Basic */
* { box-sizing:border-box; }
a{ color:#0055d5; }
li{ list-style-type:none; }
img{ display:block; max-width:100%; height:auto; margin:0 auto; }
header{ background: #008bc1; width:100%; min-width:1024px; z-index:20; }
main{ min-width:1024px; }
footer{}
.clearfix::after{ content:""; display:block; clear:both; }

/* Header */
.hdrBlock{ margin:0 auto; padding-top:29px; width:944px; height:118px; }
.hdrLogo a{ display:block; line-height:80px; text-align:center; position:relative; text-indent: -9999px; width:944px; height:60px; z-index:14; }
.hdrLogo a::before{ background:url(../../img/21th/21th_maintext.svg) no-repeat; content:""; background-size:541x 60px; display:block; position:absolute; top:0; left:50%; transform: translateX(-50%); width:541px; height:60px; z-index:15; }

/* Main*/
.maiBlock{ margin:20px auto 0; padding: 0 0 40px; width:944px; }
.maiBlock::after{ content:""; display:block; clear:both; }
.maiContent{ float:right; width:648px; }
.maiSide{ float:left; width:256px; }

/* Main Side */
.nav-pc ul{ margin-bottom:40px; }
.nav-pc ul li{ margin-bottom:1px; position:relative; }
.nav-pc ul li a{ background:#e7f0f4; color:#333; display:table-cell; font-weight:500; padding-left:20px; transition:all 0.2s ease; width:256px; height:48px; vertical-align:middle; }
.nav-pc ul li a::before{ background:url(../../img/21th/main_03.svg) no-repeat; background-size:8px 15px; content:""; display:block; position:absolute; top:16px; right:20px; width:8px; height:15px; z-index:10; }
.nav-pc ul li a:hover{ background:#cae3ef; text-decoration:none; }
.nav-pc ul li.navActive a{ background: #008bc1; color:#fff; }
.nav-pc ul li.navActive a::before{ display:none; }
.nav-pc ul li.navBlank a::before{ background:url("../../img/21th/icon-navblank.svg") no-repeat; background-size:18px 18px; content:""; display:block; position:absolute; top:15px; right:16px; width:18px; height:18px; z-index:10; }
.nav-pc ul li.tLS-1px{ letter-spacing:-1px; }
.nav-pc ul li.nav-webgakkai{ margin-top: 16px; }
.nav-pc ul li.nav-webgakkai a{ background: #fff; border: 1px solid #15a7a5; color: #15a7a5; font-weight: bold; padding: 0; text-align: center; }
.nav-pc ul li.nav-webgakkai a:hover{ opacity: 0.5; }
.nav-pc ul li.nav-webgakkai a::before{ display:none; }
.nav-sp{ display:none; }
.maiSide_inr{ margin-bottom:32px; }
.maiSide_inr h3{ background: #008bc1; color:#fff; font-weight:bold; line-height:1em; text-align:center; padding:14px 0; }
.maiSide_inr p{ line-height:2.8rem; }
.maiSide_inr p.ePdf-side{ background:#f17f89; color:#fff; display:block; font-size:1.2rem; line-height:20px; margin:0 auto; text-align:center; width:60px; height:20px; }
.videoBox-fix{ margin-bottom:32px; width:256px; height:auto; }
.videoBox-fix video{ max-width:256px; max-height:144px; }
.videoBox-fix p{ font-size:14px; line-height:2.2rem; margin-top:8px; text-align: center; }

/* Footer */
.ftrCopyright{ background:#353535; border-top:4px solid #008bc1; padding:10px 40px; text-align:right; }
.ftrCopyright p{ color: #a4a3a3; margin:0 auto; width:944px; }

/* page top */
#pageTop{ display:none; position:fixed; bottom:24px; right:24px; width:48px; height:48px; z-index:30; }
#pageTop a{ background:url(../../img/21th/main_04.svg) no-repeat; background-size:48px 48px; background-position:center center; display:block; width:48px; height:48px;}

/* TEL */
a[href^="tel:"]{ color:#333; cursor:default; }
a[href^="tel:"]:hover{ text-decoration:none; }

/* IE Hack */
_:-ms-lang(x), .navUl1 li a{ position:relative; top:2px; }

/* 20251009追加 */
.pdfDownload{ background: #0055d5; color: #fff; display: inline-block; font-size: 1.3rem; line-height: 1em; transition: all 0.2s ease; margin-left: 12px; padding: 5px 12px 3px; position: relative; top: -3px; text-indent: 0; }
.pdfDownload:visited{ color: #fff !important;}
.pdfDownload:hover{ text-decoration: none; opacity: 0.7; }


/*******************************************/
/* responsive                              */
/*******************************************/
@media screen and (max-width:767px) {
	/* Basix */
	body{ min-width:320px; }
	header{ min-width:320px; }
	main{ display:block; width:100%; min-width:320px; }

	/* Header */
	.hdrBlock{ padding-top:18px; width:288px; height:64px; }
	.hdrLogo a{ line-height:27px; width:288px; height:27px; }
	.hdrLogo a::before{ background-size:288px 30px; width:288px; height:30px; }

	/* Nav SP */
	.nav-sp{ display:block; padding:0; width:100%; height:36px; }
	.nav-sp .navFixed{ background: rgb(247,247,247); background: linear-gradient(180deg, rgba(247,247,247,1) 0%, rgba(247,247,247,1) 49%, rgba(238,238,238,1) 51%, rgba(238,238,238,1) 100%); display:block; position:relative; top:0; width:100%; height:44px; z-index:15; border-bottom:1px solid #ddd; }
	.nav-sp .navFixed .navDropdown{ position:absolute; display:none; background:#555555; overflow-y: auto; width:100%; height: calc(100vh - 104px); z-index:13; }
	.nav-sp .navFixed .navDropdown li a{ border-bottom:1px solid #aaa; color:#fff; display:block; line-height:1em; padding:16px; position: relative; }
    .nav-sp .navFixed .navDropdown li.navBlank-sp a::before{ background:url("../../img/19th/icon-blank.svg") no-repeat; background-size:18px 18px; content:""; display:block; position:absolute; top:15px; right:16px; width:18px; height:18px; z-index:10; }
	.nav-sp .navFixed ul li a:hover{ text-decoration:none; }	
	.nav-sp .navFixed.fixed{ position:fixed; top:0; }
    .nav-sp .navFixed.fixed .navDropdown{ height: calc(100vh - 40px); }
	.nav-sp .navFixed p.navMenu{ color:#333; display:block; font-weight:bold; margin:0 auto; text-align:center; text-decoration:none; line-height:4rem; width:100%; height:40px; }
	.nav-sp .navFixed p.navMenu::before{ content:"メニュー"; background:url(../../img/14th/main_05.svg) no-repeat; background-size:24px 16px; background-position:right 16px center; display:block; width:100%; height:40px; }
	.nav-sp .navFixed p.active::before{ content:"閉じる"; background:url(../../img/14th/main_06.svg) no-repeat; background-size:16px 16px; background-position:right 16px center; display:block; width:100%; height:40px; }
	.bnrImg{ max-width:256px; }
	
	/* Main contnt */
	.maiBlock{ display:block; width:100%; }
	.maiContent{ width:100%; padding:0 16px; }
	.maiSide{ width:100%; padding:0 16px; }
	.videoBox-fix{ margin:0 auto 32px; }
	.videoBox-fix p{ font-size:14px; line-height:2.2rem; margin-top:4px; }

	/* Main Side */
	.nav-pc{ display:none; }
	
	/* Footer */
	.ftrCopyright{ padding:10px 16px; }
	.ftrCopyright p{ width:100%; text-align:center; }
	
	/* page top */
	#pageTop{ bottom:16px; right:16px; }

	/* TEL */
	a[href^="tel:"]{ color:#0055d5; cursor:pointer; }

}

/*******************************************/
/* print                              */
/*******************************************/

@media print {
	.printBreak{ page-break-before:always; }/* 印刷用　ページ送り位置調整 */
	.printVisible{ opacity:1 !important; visibility:visible !important; transform:none !important; }/* 印刷時　アニメーション部分の表示 */
	body{ width:1024px; transform:scale(0.8); -moz-transform:scale(0.8); -webkit-transform:scale(0.8); transform-origin:0 0; }
	
	/* IE Hack */
	_:-ms-lang(x), body{ width:1024px; transform:scale(1); }
}