@charset"utf-8";
/*
南京都学園 創立50周年Web Site ver.1  --  Primary CSS
Author : Hideyuki Koyama -MONTAGE lab.(https://www.montagelab.jp)
Latest Updated : 9 Jun., 2026
*/

/**
 * Table of Contents
 *
 * 1.0 - Typography
 * 2.0 - Elements
 * 3.0 - Alignment
 * 4.0 - Links
 * 5.0 - Navigations
 * 6.0 - layout
 * 7.0 - Clearfix
 * 8.0 - Forms
 * ex. - Media Queries
 *
 */

/* **************************************************************************** */
/*
/* 1.0 Typography
/*
/* **************************************************************************** */


/**
 * 1.1 Import fonts
 */


/**
 * 1.2 Typo
 */

body,
button,
input,
select,
textarea {
	font-family: "Roboto", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ ゴシック", sans-serif;
	font-size: 1.5rem;
	line-height: 1;
	color: #000;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
	font-weight: 700;
}
h1 + h2,
h2 + h3,
h3 + h4,
h4 + h5,
h5 + h6 { margin-top:0 !important;}

h1	{ font-size:2.8rem;}
h2	{ font-size:2.8rem;}
h3	{ font-size:2.4rem;}
h4	{ font-size:1.6rem;}
h5	{ font-size:1.5rem;}
h6	{ font-size:1.5rem;}

article h1,
article h2	{ margin:2em 0 1.0em; line-height:1.5;}
article h3,
article h4	{ margin:3em 0 1em; line-height:1.5;}
article h5,
article h6	{ margin:2em 0 1em; line-height:1.5;}

section h1:first-child, section h2:first-child, section h3:first-child, section h4:first-child, section h5:first-child, section h6:first-child,
.content h1:first-child, .content h2:first-child, .content h3:first-child, .content h4:first-child, .content h5:first-child, .content h6:first-child,
.page-content h1:first-child, .page-content h2:first-child, .page-content h3:first-child, .page-content h4:first-child, .page-content h5:first-child, .page-content h6:first-child,
.entry-content h1:first-child, .entry-content h2:first-child, .entry-content h3:first-child, .entry-content h4:first-child, .entry-content h5:first-child, .entry-content h6:first-child,
.section-content h1:first-child, .section-content h2:first-child, .section-content h3:first-child, .section-content h4:first-child, .section-content h5:first-child, .section-content h6:first-child 
{ margin-top:0 !important;}

p {}
article p { margin-bottom:1.6em; line-height:1.8;}

b,
strong 	{ font-weight: 700;}

em		{ font-style: normal;}

dfn,
cite,
i { font-style: italic;}

blockquote {
	border-left: 4px solid #707070;
	border-left: 4px solid rgba(51, 51, 51, 0.7);
	color: #707070;
	color: rgba(51, 51, 51, 0.7);
	font-size: 18px;
	font-size: 1.8rem;
	font-style: italic;
	line-height: 1.6667;
	margin-bottom: 1.6667em;
	padding-left: 0.7778em;
}

blockquote p { margin-bottom: 1.6667em;}
blockquote > p:last-child { margin-bottom: 0;}

blockquote cite,
blockquote small {
	color: #333;
	font-size: 15px;
	font-size: 1.5rem;
	font-family: "Noto Sans", sans-serif;
	line-height: 1.6;
}

blockquote em,
blockquote i,
blockquote cite {
	font-style: normal;
}

blockquote strong,
blockquote b {
	font-weight: 400;
}

address {
	font-style: normal;
	margin: 0;
}

code,
kbd,
tt,
var,
samp,
pre {
	font-family: Inconsolata, monospace;
	-webkit-hyphens: none;
	-moz-hyphens: none;
	-ms-hyphens: none;
	hyphens: none;
}

pre {
	background-color: transparent;
	background-color: rgba(0, 0, 0, 0.01);
	border: 1px solid #eaeaea;
	border: 1px solid rgba(51, 51, 51, 0.1);
	line-height: 1.2;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 0.8em;
	white-space: pre;
	white-space: pre-wrap;
	word-wrap: break-word;
}

abbr[title] {
	border-bottom: 1px dotted #eaeaea;
	border-bottom: 1px dotted rgba(51, 51, 51, 0.1);
	cursor: help;
}

mark,
ins 	{ background-color: #fff9c0; text-decoration: none;}

sup,
sub 	{ font-size: 75%; height: 0; line-height: 0; position: relative; vertical-align: baseline;}
sup		{ bottom: 1ex;}
sub		{ top: .5ex;}

small	{ font-size: 75%;}

big		{ font-size: 125%;}




/**
 * - 1.3 Lists
 */

ul,
ol { margin: 1.6em 0 1.6em; list-style-position:outside; line-height:1.5;}

ul { margin-left:0; list-style: none;}

ol { margin-left:1.5em; list-style: decimal;}

li > ul,
li > ol {
	margin: 1em 0 1em 1.3333em;
}
li > ol li:before { content:''; width:0; height:0; border:0 !important;}

nav ul { margin:0;}
h1 + ul,
h2 + ul,
h3 + ul,
h4 + ul,
h5 + ul,
h6 + ul,
h1 + ol,
h2 + ol,
h3 + ol,
h4 + ol,
h5 + ol,
h6 + ol { margin-top:0 !important;}

ul.reset,
ul.reset li,
ol.reset,
ol.reset li { margin:0 !important; padding:0 !important; list-style:none !important; line-height:1.5;}
ul.reset li:before,
ul.reset li:after { content:''; width:0; height:0; border:0 !important;}

/* Unoedered list */
ul.lr		{ list-style:none; text-align:right;}
ul.lr .l	{ display:inline-block; position:relative; z-index:1; float:left; text-align:left; background-color:#fff;}
ul.lr .r	{ display:inline-block; position:relative; z-index:2; padding:0 0 0 0.5em; text-align:right; background-color:#fff;}
ul.lr li 	{ position:relative;}
ul.lr li:after { position:absolute; top:50%; left:0; content:''; width:100%; border-top:1px dashed #ccc;}

article ul li { position:relative; margin:0 0 0.5em; padding-left:10px;}
article ul li:before { position:absolute; content:''; top:0.55em; left:0; width:4px; height:4px; background-color:#93214D; border-radius:100%;}
article ol li { position:relative; margin:0 0 0.8em;}

ul.circle	{}
ul.circle li	{ position:relative; padding:0 0 0 1.5em;}
ul.circle li:before	{ position:absolute; top:.1em; left:0; content:''; padding:0.2em 0 0; width:1.2em; height:1.2em; text-align:center; color:#fff; background-color:#93214D; border-radius:50px;}

ul.checklist	{ margin:0; padding:0;}
ul.checklist li	{ position:relative; padding:0px 0 1rem 30px; border-bottom:1px dashed #fff;}
ul.checklist li:before	{ top:0; left:1px; width:22px; height:22px; background:none; border:2px solid #93214D; border-radius:0;}
ul.checklist li:after	{ position:absolute; top:2px; left:8px; content:''; width:8px; height:14px; border:solid #93214D; border-width:0 2px 2px 0; transform:rotate(45deg);}

ul.caution li	{ position:relative; padding:0 0 0 1.2em;}
ul.caution li:before	{ position:absolute; top:0; left:0; content:'※'; padding:0; width:auto; height:auto; color:#93214D; background:none;}


/* Ordered list */
article ol li { position:relative; margin:0 0 0.8em;}
article ol ul { margin-left:0.4em;}

ol.numbering	{ list-style:none; margin-left:0;}
ol.numbering li	{ position:relative; padding:0 0 0 2.2em;}
ol.numbering li:before	{ position:absolute; top:-0.15em; left:0; content:''; padding:0.2em 0 0; width:1.8em; height:1.8em; text-align:center; color:#fff; background-color:#003FC3;}
ol.numbering li:nth-of-type(1):before	{ content:'1';}
ol.numbering li:nth-of-type(2):before	{ content:'2';}
ol.numbering li:nth-of-type(3):before	{ content:'3';}
ol.numbering li:nth-of-type(4):before	{ content:'4';}
ol.numbering li:nth-of-type(5):before	{ content:'5';}
ol.numbering li:nth-of-type(6):before	{ content:'6';}
ol.numbering li:nth-of-type(7):before	{ content:'7';}
ol.numbering li:nth-of-type(8):before	{ content:'8';}
ol.numbering li:nth-of-type(9):before	{ content:'9';}

/* Definition list */
dl { margin-bottom: 1.6em; line-height:1.5;}
dt { margin-bottom: 0.6em; font-weight: bold;}
dd { padding-bottom: 1.6em;}

dl.bb	{ border:0; border-top:1px solid rgba(0,0,0,.25);}
dl.bb dt	{ padding-top: 1.6em;}
dl.bb dd	{ padding-bottom: 1.6em; border-bottom:1px solid rgba(0,0,0,.25);}

dl.faq	{}
dl.faq dt	{ position:relative; margin:1.2em 0 0.4rem; padding:0.6em 0 0.5em 3.3em;}
dl.faq dt:before	{ position:absolute; top:0; left:0px; content:"Q"; padding:8px 0 0; width:2.8em; height:2.8em; text-align:center; color:#fff; background-color:#056AAF;}
dl.faq dd	{ position:relative; padding:0.6em 0 1.8em 3.3em; border-bottom:1px solid rgba(0,0,0,.25);}
dl.faq dd:before	{ position:absolute; top:0; left:0px; content:"A"; padding:8px 0 0; width:2.8em; height:2.8em; text-align:center; color:#003FC3; background-color:#D8E4FF;}



/**
 * - 1.4 Table
 */

table,
th,
td {
	border: 1px solid #eaeaea;
	border: 1px solid rgba(51, 51, 51, 0.1);
}

table {
	border-collapse:collapse;
	border-spacing: 0;
	border-width: 1px 0 0 1px;
	margin: 0 0 1.6em;
	table-layout: fixed; /* Prevents HTML tables from becoming too wide */
	width: 100%;
}

caption,
th,
td { padding: 0.8em 0.4em; text-align:left; font-weight:normal;}
th { border-width:1px; font-weight: 700;}
td { border-width:1px; background-color:#fff;}

caption { margin:0.3em 0; font-size:90%; caption-side:bottom;}

thead th { vertical-align:middle; font-weight:bold; color:#fff; background-color:#30b4e8; border-right-color:#fff; border-bottom-color:#fff;}
thead th:last-child	{ border-right-color:#38C1F8;}
thead td { vertical-align:middle; background-color:#bce9fb;}

tbody th { vertical-align:middle; background-color:#bce9fb;}
tbody td { vertical-align:middle; border-color:#38C1F8; border-width:1px 1px 1px 1px;}

tfoot 	 { border-top:3px double #38C1F8;}
tfoot th { vertical-align:middle; font-weight:bold; color:#fff; background-color:#30b4e8; border-right-color:#fff; border-bottom-color:#fff;}
tfoot th:last-child	{ border-right-color:#38C1F8;}
tfoot td { vertical-align:middle; background-color:#bce9fb;}

table ul,
table ol { margin:.6em 0 .6em 0em; list-style-position:outside; line-height:1.25;}
table ul li:before { top:4px !important;}

table.text-align-center,
table.text-align-center th,
table.text-align-center td,
tr.center th,
tr.center td,
th.center,
td.center { text-align:center;}

.yscroll	{ width:100%; overflow:scroll;}
.yscroll table	{ table-layout:auto;}
.yscroll::-webkit-scrollbar			{ height: 5px;}
.yscroll::-webkit-scrollbar-track	{ background: #F1F1F1;}
.yscroll::-webkit-scrollbar-thumb	{ background: #BCBCBC;}




/**
 * - 1.5 Decoration
 */

.not	{ margin-top:0 !important; vertical-align:top;}
.nor	{ margin-right:0 !important;}
.nob	{ margin-bottom:0 !important;}
.nol	{ margin-left:0 !important;}

.nobt	{ border-top:none !important;}
.nobr	{ border-right:none !important;}
.nobb	{ border-bottom:none !important;}
.nobl	{ border-left:none !important;}

.bt		{ border-top:1px solid #ccc !important;}
.br		{ border-right:1px solid #ccc !important;}
.bb		{ border-bottom:1px solid #ccc !important;}
.bl		{ border-left:1px solid #ccc !important;}

.lead 	{ font-size:1.6rem;}
.attention { color:#f00;}
.note		{ font-size:13px; font-size:1.3rem; line-height:1.5;}
.caption	{ font-size:13px; font-size:1.3rem; line-height:1.5; color:#666;}
.wp-caption-text{ margin:0.8rem 1.2rem 1.6rem; font-size:13px; font-size:1.3rem; line-height:1.5 !important; color:#666;}

.border 	{ padding-bottom:0.5em; border-bottom:1px solid #93214D;}
.bordered 	{ padding:0.8em; border:1px solid #93214D; border-radius:5px;}
.filled		{ padding:0.5em 0.8em; background-color:#ededed;}
.filledwrap .filled { background-color:#fff;}

/* color */
.dark	{ color:#000;}
.pale	{ color:#999;}

/* family */
.serif	{ font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
.sans	{ font-family: "Roboto", Helvetica, sans-serif;}

/* style */
.normal	{ font-style: normal;}
.italic	{ font-style: italic;}





/* **************************************************************************** */
/*
/* 2.0 Elements
/*
/* **************************************************************************** */

::selection {background:#CDD3CD; color:#fff;}
::-moz-selection { background:#CDD3CD; color:#fff;}

hr {
	background-color: #eaeaea;
	background-color: rgba(51, 51, 51, 0.1);
	border: 0;
	height: 1px;
	margin:1.6em 0;
}
hr.none { background-color:transparent;}

img {
	-ms-interpolation-mode: bicubic;
	border: 0;
	height: auto;
	max-width: 100%;
	vertical-align: bottom;
}
.image img { width:100%;}

figure 		{ margin:0; padding:0;}
figure img 	{ width:100%; height:auto;}
figcaption 	{}

del { opacity: 0.8;}





/* **************************************************************************** */
/*
/* 3.0 Alignments
/*
/* **************************************************************************** */

.alignleft {
	display: inline;
	float: left;
	margin:0 2.6rem 1rem 0;
}

.alignright {
	display: inline;
	float: right;
	margin:0 0 1rem 2.6rem;
}

.aligncenter {
	display: block;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 1rem;
}

.left	{ text-align:left;}
.right	{ text-align:right;}
.center	{ text-align:center;}




/* **************************************************************************** */
/*
/* 4.0 Links
/*
/* **************************************************************************** */

a {
	color: #93214D;
	text-decoration: none;
	outline:none;
	transition:all 0.2s ease;
}

a:hover,
a:focus {
	color: #d22063;
}

nav a { text-decoration:none;}




/* **************************************************************************** */
/*
/* 5.0 Navigation
/*
/* **************************************************************************** */

/**
 * - Bread crumb navigation
 */

.breadcrumb	{ margin:0 8%; padding:2em 0;}
.breadcrumb ul	{ text-align:left; font-size:1.1rem;}
.breadcrumb li	{ display:inline-block; margin:0 0.5rem 0 0; line-height:1;}
.breadcrumb li a	{ display:block; position:relative; padding:0 1em 0 0;}
.breadcrumb li a:after	{ position:absolute; top:2px; right:0; content:''; width:5px; height:5px; border:solid #222; border-width:1px 1px 0 0; transform:rotate(45deg);}
.breadcrumb li a:hover	{}



/**
 * - Header navigation
 */

#headnav { display:none;}
#headnav ul	{ margin:0; padding:0 0 0 100px; font-size:0;}
#headnav li { display:inline-block; vertical-align:top; margin:0 1px; font-size:1.3rem; line-height:1; text-transform:capitalize;}
#headnav li a	{ position:relative; display:block; padding:2.1rem 1rem 2.8em; color:#000; transition:all 0.4s ease;}
#headnav li a:before	{ position:absolute; bottom:0; left:50%; content:''; width:0; height:0; border-bottom:4px solid #93214D; transition:all 0.4s ease;}
#headnav li a:hover,
#headnav li a:active	{ color:#93214D;}
#headnav li a:hover:before		{ left:0; width:100%;}

#headnav li.current-menu-item a:before { left:0; width:100%;}
#headnav li.current-menu-item.anchor a:before { left:0; width:0;}

.btn-kifu	{ display:none;}
.btn-kifu	{ position:fixed; top:16px; right:24px;}
.btn-kifu a	{ display:block; padding:1.6em 1em; white-space:nowrap; color:#fff; font-size:1.3rem; line-height:1; font-weight:700; background-color:#93214D; border-radius:5px;}
.btn-kifu a:hover	{ background-color:#d22063;}


/**
 * - footer-sitemap
 */
.footer-sitemap	{ margin:0 0 60px; text-align:left;}
.footer-sitemap ul	{ margin:0; padding:0;}
.footer-sitemap ul.menu > li	{ position:relative; margin:0 0 6px; padding:0 0 0 24px; font-size:1.4rem; font-weight:700;}
.footer-sitemap ul.menu > li:before	{ position:absolute; top:0.55em; left:7px; content:''; width:5px; height:5px; background:none; border:solid #93214D; border-width:1.5px 1.5px 0 0; border-radius:0; transform:rotate(45deg);}
.footer-sitemap ul.menu > li:after	{ position:absolute; top:0; left:0; content:''; width:20px; height:20px; background:none; border:1px solid #93214D; border-radius:4px;}
.footer-sitemap ul.sub-menu	{ margin:10px 0 25px;}
.footer-sitemap ul.sub-menu li	{ position:relative; margin:0 0 6px; padding:0 0 0 13px; font-size:1.3rem; font-weight:400;}
.footer-sitemap ul.sub-menu li:before	{ position:absolute; top:0.4em; left:0; content:''; width:7px; height:7px; background:none; border:solid #93214D; border-width:1.5px 1.5px 0 0; border-radius:0; transform:rotate(45deg);}
.footer-sitemap a:hover	{ text-decoration:underline;}



/**
 * - sns
 */

.sns ul,
ul.sns { margin:0; padding:0;}
.sns li	{ display:inline-block; vertical-align:middle; margin:0 8px 4px; padding:0;}
.sns li:before	{ background:none; border:0;}
.sns li a	{ 
 display:block; width:40px; height:40px; font-size:0; 
 background-color:#fff; background-repeat:no-repeat; background-position:center center; background-size:23px; 
 border:0 solid #fff; border-radius:100%;
}
.sns .fb a	{ background-color:#4267B2; background-image:url(../img/50th/icon-wh-fb.png);}
.sns .fb a:hover { opacity: 0.8;}
.sns .tw a	{ background-color:#1DA1F2; background-image:url(../img/50th/icon-wh-tw.png);}
.sns .tw a:hover { opacity: 0.8;}
.sns .ln a	{ background-color:#00B900; background-image:url(../img/50th/icon-wh-ln.png);}
.sns .ln a:hover { opacity: 0.8;}
.sns .yt a	{ background-color:#ED3124; background-image:url(../img/50th/icon-wh-yt.png);}
.sns .yt a:hover { opacity: 0.8;}
.sns .tk a	{ background-color:#000; background-image:url(../img/50th/icon-tk.png); background-size:36px;}
.sns .tk a:hover { opacity: 0.8;}
.sns .ig a	{
 background:url(../img/50thnicon-ig.png) no-repeat center center / 40px,linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
 background:url(../img/50th/icon-ig.png) no-repeat center center / 40px, radial-gradient(circle farthest-corner at 32% 106%, rgb(255, 225, 125) 0%, rgb(255, 205, 105) 10%, rgb(250, 145, 55) 28%, rgb(235, 65, 65) 42%, transparent 82%), linear-gradient(135deg, rgb(35, 75, 215) 12%, rgb(195, 60, 190) 58%);
}
.sns .ig a	{
 background:#fff url(../img/50th/icon-ig.png) no-repeat center center / 24px;
}
.sns .xs a	{ background-color:#000; background-image:url(../img/50th/icon-wh-xs.png);}
.sns .xs a:hover { opacity: 0.8;}

.sns .mig a	{ background-image:url(../img/50th/icon-mig.png); background-size:44px;}
.sns .kog a	{ background-image:url(../img/50th/icon-kog.png); background-size:44px; }
.sns .fuk a	{ background-image:url(../img/50th/icon-fuk.png); background-size:44px; }
.sns .dob a	{ background-image:url(../img/50th/icon-dob.png); background-size:44px; }



/**
 * - Buttons
 */

div.btn	{ display:block; margin:0 auto 1.6em; text-align:center;}
div.btn a	{ 
	position:relative; display:inline-block; padding:2rem 1rem; width:100%; min-width:270px; max-width:512px; 
	text-decoration:none; letter-spacing:0.05em; color:#000; 
	background-color:#eee; border:1px solid #000;
}
div.btn a:hover	{ color:#fff; background-color:#000;}

.buttons	{}
.button	{ margin:0 0 1em;}
.button a	{ position:relative; display:block; text-align:center; text-decoration:none; color:#000; border:1px solid #93214D; border-radius:5px;}
.button a:hover	{ color:#fff; background-color:#93214D;}
.button a span	{ display:block; padding:1.6em;}

.btn-primary a { 
	position:relative; display:block; padding:1.6em 72px 1.6em 1.6em; max-width:420px;
	text-align:left; font-size:1.6rem; font-weight:700; line-height:1.4; text-decoration:none; color:#fff; 
	background-color:#93214D; border-radius:5px;
}
.btn-primary a:before	{ position:absolute; top:calc(50% - 25px); right:16px; content:''; width:50px; height:50px; background-color:rgba(255,255,255,1); border-radius:50%;}
.btn-primary a:hover	{ background-color:#d22063;}
.btn-primary a span	{ align-self:center;}
.btn-primary a span:before	{ position:absolute; top:calc(50%); right:31px; content:''; width:20px; height:0; border-top:2px solid #93214D;}
.btn-primary a span:after	{ position:absolute; top:calc(50% - 10px); right:34px; content:''; width:0; height:12px; border-right:3px solid #93214D; transform:skewX(45deg);}

.btn-secondary a { 
	position:relative; display:block;padding:1.6em 72px 1.6em 1.6em; max-width:420px;
	text-align:left; font-size:1.6rem; font-weight:700; line-height:1.4; text-decoration:none; color:#000; 
	background-color:#fff; border:1px solid #93214D; border-radius:5px;
}
.btn-secondary a:before	{ position:absolute; top:calc(50% - 25px); right:16px; content:''; width:50px; height:50px; background-color:#93214D; border-radius:50%; transition:all 0.2s ease;}
.btn-secondary a:hover	{ color:#d22063;}
.btn-secondary a:hover:before	{ background-color:#d22063;}
.btn-secondary a span	{ align-self:center; min-height:100px;}
.btn-secondary a span:before	{ position:absolute; top:calc(50%); right:31px; content:''; width:20px; height:0; border-top:2px solid #fff;}
.btn-secondary a span:after	{ position:absolute; top:calc(50% - 10px); right:34px; content:''; width:0; height:12px; border-right:3px solid #fff; transform:skewX(45deg);;}


/* outbound icon button */
.btn.outbound a:before	{ position:absolute; top:5px; right:7px; content:''; width:10px; height:8px; border:1px solid #000;}
.btn.outbound a:after	{ position:absolute; top:9px; right:11px; content:''; width:8px; height:6px; border:solid #000; border-width:0 0 1px 1px;}
.btn.outbound a:hover:before,
.btn.outbound a:hover:after	{ border-color:#fff;}





/**
 * - static
 */
.static	{ position:fixed; bottom:0; left:0; z-index:100; width:100%; background-color:#fff; box-shadow:0 0 16px rgba(0,0,0,.1);}
.static ul	{ margin:0; padding:0;
	display:flex; flex-flow:row wrap; justify-content:space-between; align-items:stretch;
}
.static li	{ padding:5px; width:50%;}
.static a	{ display:block; padding:1rem; border-radius:5px;}
.static li:nth-child(1) a	{ background-color:rgba(143,33,77,.2);}
.static li:nth-child(2) a	{ background-color:rgba(143,33,77,.2);}
.static a:hover	{}



/*
 * drawer navigation
 */

.drawer-nav		{ 
	position:relative; top:0; left:0; padding:0 10%; width:100%; height:100vh; 
	color:#fff; 
	background-color:#7A0032; overflow-y:auto; border-radius:0;
	-webkit-overflow-scrolling:touch; 
	box-shadow:5px 5px 8px rgba(163, 177, 198, 0.2), -4px -4px 8px rgba(255, 255, 255, 0.8);
	transform:scale(1) translateY(0); transition:all 0.25s;
	visibility:hidden; position:fixed; z-index:-1; opacity:0;
}
.drawer-overlay	{ position:fixed; z-index:-101; top:0; left:0; width:100%; height:100%; background-color:rgba(242,242,242,0); transition:all 0.25s;}
.drawer-open .drawer-overlay	{ z-index:998; background-color:rgba(242,242,242,0.9);}

.drawer-hamburger		{ 
	position:fixed; top:15px; right:10px; z-index:1999;
	display:block; margin:0 !important; padding:0 !important; width:36px; max-width:36px; height:30px;
	font-size:0; 
	-webkit-transition:all .6s cubic-bezier(.19,1,.22,1); transition:all .6s cubic-bezier(.19,1,.22,1); 
	-webkit-transform:translateZ(0); transform:translateZ(0); 
	border:0; outline:0; background-color:transparent; box-sizing:content-box; cursor:pointer;
}
.drawer-hamburger:hover	{ background-color:transparent;}
.drawer-hamburger-icon	{ position:relative; display:block; margin-top:0;}
.drawer-hamburger-icon,.drawer-hamburger-icon:after,
.drawer-hamburger-icon:before	{ width:100%; height:2px; -webkit-transition:all .6s cubic-bezier(.19,1,.22,1); transition:all .6s cubic-bezier(.19,1,.22,1); background-color:#93214D;}
.drawer-hamburger-icon:after,.drawer-hamburger-icon:before { position:absolute; top:-7px; left:0; content:" "}
.drawer-hamburger-icon:after	{ top:7px}

.drawer-open .drawer-hamburger { top:2.5vh; right:5vw; width:38px; max-width:40px; padding:0 0 10px;}
.drawer-open .drawer-hamburger-icon	{ width:40px; background:transparent;}
.drawer-open .drawer-hamburger-icon:after,
.drawer-open .drawer-hamburger-icon:before	{ top:0;}
.drawer-open .drawer-hamburger-icon:after	{ background-color:#fff; -webkit-transform:rotate(-45deg);transform:rotate(-45deg);}
.drawer-open .drawer-hamburger-icon:before	{ background-color:#fff; -webkit-transform:rotate(45deg); transform:rotate(45deg);}
.drawer-open .drawer-nav {
	display:block; top:0; z-index:999; visibility:visible;
	transform:scale(1); opacity:1;
}

.drawer-container	{ margin:0 auto; padding:0 0 40px;}
.drawer-nav ul.menu	{ margin:0 auto 40px; max-width:440px; border-top:1px dashed rgba(255,255,255,.2);}
.drawer-nav ul.menu li	{ position:relative; margin:0; text-align:left; font-size:2.0rem; font-weight:normal; letter-spacing:0em; border-bottom:1px dashed rgba(255,255,255,.2);}
.drawer-nav ul.menu > li a	{ 
	position:relative; display:block; padding:1em 0; color:#fff; text-decoration:none; background-color:transparent;
}
.drawer-nav ul.menu > li a:before	{ position:absolute; top:calc(50% - 12px); right:0; content:''; width:24px; height:24px; background-color:#fff; border-radius:50%;}
.drawer-nav ul.menu > li a:after	{ position:absolute; top:calc(50% - 5px); right:7px; content:''; margin:0 0 0 -4px; width:0; height:0; border:solid transparent; border-width:5px 0 5px 7px; border-left-color:#93214D;}
.drawer-nav ul.menu li a:hover	{ opacity:0.7;}
.drawer-nav ul.sub-menu	{ margin-left:1em;}
.drawer-nav ul.sub-menu > li	{ font-size:1.8rem; border-bottom:0;}
.drawer-nav ul.sub-menu > li a	{ padding:0.6em 0;}
.drawer-nav ul.sub-menu > li a:before	{ background-color:transparent;}
.drawer-nav ul.sub-menu > li a:after	{ border-left-color:#fff;}


.drawer-home	{ margin:0; padding:50px 10%;}
.drawer-home .site-logo	{ 
	margin:0 auto; padding:0; width:240px; height:50px; font-size:0; text-align:left;
}
.drawer-home .site-logo a	{ 
	display:block; width:100%; height:100%; overflow:hidden;
	background:url(../img/common/minamikyotogakuen-logo--wh.svg) no-repeat 0 0 / 100% auto;
}
.drawer-container .btn-secondary	{ margin:0 auto 2em;}
.drawer-container .btn-secondary a	{ margin:0 auto;}
.drawer-nav .sns	{ padding:0 0 136px;}

@media screen and (min-width: 720px) {
	.drawer-home	{ padding:100px 10% 50px;}
	.drawer-home .site-logo	{ width:440px; height:100px;}
	.drawer-nav ul.menu	{ margin:0 auto 5rem;}
	.drawer-nav ul.menu li	{ font-size:2.4rem;}
	.drawer-nav ul.menu li a	{ padding:1.8rem 1em;}
	
}

@media screen and (min-width: 1024px) {
	.drawer, .drawer-hamburger	{ display:none;}
}




/* **************************************************************************** */
/*
/* 6.0 layout
/*
/* **************************************************************************** */

body{
	text-align:center;
}
#wrapper 	{}

.ss		{ display:block;}	/* .ss < 420px		*/
.mm		{ display:none;}	/* .mm < 1024px		*/
.ll		{ display:none;}	/* .ll >= 1024px	*/
.spn	{ display:block;}	/* .spn < 720px		*/
.pc		{ display:none;}	/* .pc >= 1024px	*/
.hide	{ display:none;}
.still	{ visibility:hidden; opacity:0;}
.check	{ position:fixed; z-index:9999;}
.skip-link	{ display:none; font-size:0;}
.screen-reader-text { font-size:0;}



/**
 * - 6.2 Header Include
 */

#headerwrap 	{ position:relative; top:0; left:0; z-index:99; width:100%; background-color:#fff; box-shadow:0 2px 16px rgba(0,0,0,.08);}
.site-header{ position:relative; padding:12px 0 0; text-align:center;}
#branding	{ position:relative; top:0; left:0; margin:0; padding:0 20px 12px;}
#branding .site-title	{ 
	margin:0; padding:0; width:240px; height:50px; font-size:0; text-align:left;
}
#branding .site-title a	{ 
	display:block; width:100%; height:100%; overflow:hidden;
	background:url(../img/common/minamikyotogakuen-logo.svg) no-repeat 0 0 / 100% auto;
}


/**
 * - 6.3 footer Include
 */

#footerwrap 	{ border-top:1px solid #7A0032;}
.site-footer	{ position:relative; padding:0 5%; font-size:1.3rem;}
.site-footer .site-title	{ padding:0 0 3rem; background-color:#fff;}
.site-footer .site-title img	{ width:100%; max-width:320px;}
.footer-content	{ margin:0 auto; padding:3rem 0; max-width:1280px; text-align:left;}
.footer-content h4	{ margin:0 0 1rem; font-size:1.5rem; line-height:1;}
.footer-content h4 span	{ display:inline-block; padding:0.4em 0.8em; color:#fff; background-color:#7A0032; border-radius:8px;}
.footer-content address	{ line-height:1.8;}
.footer-content .address	{ margin:0 0 3rem;}
.footer-content .address p	{ line-height:1.5;}
.footer-content .address p span	{ display:block;}

#copyright		{ padding:3rem 5% 3rem; background-color:#7A0032; text-align:center;}
#copyright p	{ margin:0; padding:0; font-size:1.1rem; letter-spacing:0.05em; color:#fff;}
#copyright p.grecaptcha-text { padding:1rem 0; font-size:1rem; color:rgba(255,255,255,.2);}


/**
 * - 6.4 container Include
 * #container > article > .content
 * 	.page-header
 * 	.page-title	
 * 	.page-content
 * 
 * #container > section > .content
 * 	.section-header	{}
 * 	.section-title	{}
 * 	.section-content{}
 * 
 */

#container	{}
.content	{}

article			{}
section			{}



/**
 * - 6.5 Column Layout
 */

.column	{ margin-left:auto; margin-right:auto; margin-bottom:5rem; padding:24px 5%;}
.column h1:first-child, .column h2:first-child, .column h3:first-child, .column h4:first-child, .column h5:first-child, .column h6:first-child	{ margin-top:0 !important;}
.column p:last-child	{ margin-bottom:0;}

.borderwrap { border:1px solid #3F7DFD; border-radius:5px;}
	.borderwrap h1:first-child,
	.borderwrap h2:first-child,
	.borderwrap h3:first-child,
	.borderwrap h4:first-child,
	.borderwrap h5:first-child,
	.borderwrap h6:first-child { margin-top:0 !important;}

.filledwrap { background-color:#E6EEFF; border-radius:5px;}
	.filledwrap h1:first-child,
	.filledwrap h2:first-child,
	.filledwrap h3:first-child,
	.filledwrap h4:first-child,
	.filledwrap h5:first-child,
	.filledwrap h6:first-child { margin-top:0 !important;}

.borderwrap .content,
.filledwrap .content	{}



/**
 * - 6.6 block Layout
 */

.blocks	{}
	.blocks > div	{}
	.block-child25	{ width:50%;}
	.block-child50	{}
	.block-child75	{}
	.block-child33	{}
	.block-child66	{}


.block-2	{}
	.block-2 > div	{}

.block-3	{}
	.block-3 > div	{}

.block-4	{}
	.block-4 > div	{}

.block-1-2	{}
	.block-1-2 > div	{}

.block-2-1	{}
	.block-2-1 > div	{}


.blocks .content	{ padding:2rem 3%;}
.blocks .content p:last-child	{ margin-bottom:0;}


ul.blocks	{ margin:0; padding:0;}
ul.blocks li	{ margin:0; padding:0;}
ul.blocks li:before	{ background:none; border:0;}

.block-gallery	{ display:flex; flex-flow:row wrap; justify-content:flex-start; align-items:flex-start;}
.block-gallery.block-2 > div, .block-gallery.block-2 > li,
.block-gallery.block-4 > div, .block-gallery.block-4 > li	{ padding:1px; width:50%;}
.block-gallery.block-3 > div, .block-gallery.block-3 > li	{ padding:1px; width:calc(100% / 3);}



/**
 * - 6.7 wp-block
 */

/* Gallery */
.wp-block-gallery{ margin:0; padding:0;}
	ul.blocks-gallery-grid	{ margin:0; padding:0;}
	ul.blocks-gallery-grid li { margin:0; padding:0;}
	ul.blocks-gallery-grid li:before { background:none; border:0;}

ul.wp-block-gallery	{}
ul.wp-block-gallery li	{ padding:0;}
ul.wp-block-gallery li:before	{ background:none; border:0;}


/* Youtube */
.wp-block-embed-youtube	{ margin:0;}
.wp-embed-aspect-16-9 .wp-block-embed__wrapper	{
	position:relative;
	padding-top:56.25%;
	width:100%; height:0;
	overflow:hidden;
}
.wp-embed-aspect-16-9 .wp-block-embed__wrapper iframe { position:absolute; top:0; left:0; width:100%; height:100%;}

/* table */
.wp-block-table	{ margin:0;}


.wp-block-gallery .blocks-gallery-image, .wp-block-gallery .blocks-gallery-item {
	align-items:flex-start;
	flex-grow:unset;
}
@supports ((position: -webkit-sticky) or(position: sticky)) {
	.wp-block-gallery .blocks-gallery-image figure, .wp-block-gallery .blocks-gallery-item figure {
		align-items: flex-start;
	}
}


/**
 * - 6.8 Video Elements
 */

.video-wrap { position:relative;}
video	{ width:100%; height:auto; vertical-align:top;}
.video-wrap .mute	{ 
	position:absolute; bottom:4px; right:4px; z-index:9; width:24px; height:24px; font-size:0;
	background:url(../img/50th/icon-sound-mute.png) no-repeat 0 0 / 100% auto; 
}
.video-wrap .mute.off	{ background-image:url(../img/50th/icon-sound-on.png);} 



/* **************************************************************************** */
/*
/* 7.0 - clearfix
/*
/* **************************************************************************** */

.clearfix::after,
.content:after,
p:after { content:''; display:block; clear:both;}




/* **************************************************************************** */
/*
/* 8.0 - .page-content
/*
/* **************************************************************************** */

.page article	{ padding:0;}
.page-home article	{ padding:0 !important;}

.page-header { position:relative; margin:0 auto; text-align:left; max-width:1280px;}
.page-title  { margin:0; padding:0 0 3rem;}
.page-title span  { display:inline-block; vertical-align:top;}
.page-title .en  { 
	position:absolute; top:0; left:0; z-index:1;
	font-size:6.0rem; font-weight:700; line-height:1; color:rgba(143,33,77,.1); font-family:"Roboto", sans-serif;
}
.page-title .jp  {
	position:relative; top:0; left:0; z-index:2; padding:3rem 0 0 4rem; 
	writing-mode: vertical-rl; text-align:left; line-height:1.6;
	font-size:2.1rem; font-weight:500; font-family: "Noto Serif JP", serif;
	text-shadow:6px 4px 3px rgba(0,0,0,.08);
}
.jp .text-combine {
	-webkit-text-combine: horizontal;
	-ms-text-combine-horizontal: all;
	text-combine-upright: all;
	display:inline-block;
	padding:0;
	letter-spacing:0;
	line-height:1;
	font-family: "Times New Roman", serif;
}
.jp .text-combine.line1 { transform:translateX(-0.28em);}
.page-content	{ margin:0 auto; text-align:left; max-width:1280px;}

article a	{ 
	text-decoration-color: #7A0032;
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-thickness: 1px;
	text-underline-offset: 2px;
}




/* **************************************************************************** */
/*
/* 11.0 - Forms
/*
/* **************************************************************************** */

input,
select,
textarea {
	vertical-align: baseline; 
	margin:0; max-width:100%;
	font-size:16px; font-size:1.6rem; line-height:1.5;
	background-color: #f7f7f7;
	border-radius: 0;
}

input {
	line-height: normal;
}

input,
textarea {
	border: 1px solid #999;
	color: #707070; border-radius:3px;
}

input:focus,
textarea:focus {
	background-color: #fff;
	border: 1px solid #7A0032;
}

select	{ 
	padding:0.35em; max-width:100%;
	border:1px solid #999; border-radius:3px;
}
select:focus {
	background-color:#DFF5DA;
	outline:none;
}

button[disabled],
input[disabled],
select[disabled],
textarea[disabled] {
	cursor: default;
	opacity: .5;
	filter:grayscale(100);
}

input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	display:inline-block; margin:1rem 1rem; padding:1.6rem 3rem; width:256px;
	text-align:center; font-size:1.5rem; text-decoration:none; color:#fff; 
	background-color:#7A0032; border:0;
	transition:all 0.2s ease;
}
input[type="reset"] { color:#F37008; border:2px solid #F37008;}

input[type="button"]:hover,
input[type="submit"]:hover,
input[type="button"]:focus,
input[type="submit"]:focus {
	color:#fff; background-color:#d22063;
}
input[type="reset"]:hover,
input[type="reset"]:focus {
	color:#fff; background-color:#F37008;
}


input[type="search"] {
	-webkit-appearance: textfield;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="number"],
input[type="date"],
input[type="password"],
input[type="search"],
textarea {
	margin:0 0.6rem 0.6rem 0;
	padding: 0.375em;
	width: 100%;
}

textarea {
	overflow: auto;
	vertical-align: top;
}
input[type="email"],
input[type="tel"],
input[type="url"]	{
	max-width:20em;
}

input[type="number"],
input[type="date"],
input[type="password"]{
	max-width:12em;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="number"]:focus,
input[type="date"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
textarea:focus {
	outline: 0;
}


input[type="checkbox"],
input[type="radio"] {
	padding: 0;
}


/**
 * .mailform : 
 */
div.mailform	{}
div.mailform dl	{ margin:0;}
div.mailform dt	{ margin:0; padding:1.6rem 0 0.8rem 0; font-weight:500; color:#7A0032}
div.mailform dd	{ margin:0; padding:0 0 1.6rem; border-bottom:1px solid rgba(0,0,0,.1);}
div.mailform .required:after	{ position:relative; vertical-align:baseline; bottom:2px; content:'必須'; margin:0 4px; padding:4px; font-size:1.1rem; font-weight:400; color:#fff; background-color:#93214D; border-radius:4px;}
div.mailform .date	{ width:5em;}
div.mailform .zip,
div.mailform input[name="zip"]	{ width:8em;}
div.mailform input[name="birth-year"]	{ width:5em;}
div.mailform input[name="birth-month"]	{ width:3em;}
div.mailform input[name="birth-day"]	{ width:3em;}
div.mailform .address	{}
div.mailform p		{ margin:0; padding:1.6rem 0; border-bottom:1px solid rgba(0,0,0,.25);}
div.mailform .caption	{ margin:0; padding:0; font-size:1.2rem;}
div.mailform .disabled	{ color:#ccc;}
div.mailform-inner	{ margin:0 auto; max-width:1120px;}
div.acception	{ margin:4rem 0; text-align:center;}
div.submit 		{ margin:4rem 0; text-align:center;}


/* :: */
input[type=checkbox],
input[type=radio] 	 { width:0em;}
label a { text-decoration:underline;}


/* : checkbox : contatform7 */
.wpcf7-list-item label input[type="checkbox"]{
	display:none;
}
.wpcf7-list-item label{
	display:inline-block; position:relative;
	font-weight:normal; color:#000; letter-spacing:0;
	cursor:pointer;
}
.wpcf7-list-item label .wpcf7-list-item-label:before{
	position:absolute; top:0; left:-30px;
	content:'';
	display:inline-block; vertical-align:middle;
	margin:0; width:20px; height:20px;
	background-color:#B4B6B7; border:2px solid transparent; border-radius:2px;
	transition:all 200ms ease;
}
.wpcf7-list-item label .wpcf7-list-item-label:after{
	content:'';
	position:absolute; top:8px; left:-21px;
	width:4px; height:8px;
	background-color:transparent; border:0 solid #d22063; border-radius:2px;
	transform:rotate(45deg); opacity:1; transition:all 200ms ease;
}
.wpcf7-list-item label input[type="checkbox"]:checked + .wpcf7-list-item-label:before{
	background-color:#fff; border-color:#d22063; opacity:1; transform:scale(1);
}
.wpcf7-list-item label input[type="checkbox"]:checked + .wpcf7-list-item-label:after{
	top:2px; left:-24px; width:8px; height:12px;
	background-color:transparnet; border:solid #d22063; border-width:0 2px 2px 0; transform:rotate(45deg);
}


/* : acceptance checkbox: contactform7 */
.wpcf7-acceptance .wpcf7-list-item label{
	margin-right:0;
}
.wpcf7-acceptance .wpcf7-list-item label .wpcf7-list-item-label:after{
	position:absolute; top:10px; left:9px;
}
.wpcf7-acceptance .wpcf7-list-item label input[type="checkbox"]:checked + .wpcf7-list-item-label:before{
	background-color:#96D054; border-color:#96D054;
}
.wpcf7-acceptance .wpcf7-list-item label input[type="checkbox"]:checked + .wpcf7-list-item-label:after{
	top:5px; left:6px; border-color:#fff;
}


/* : radio button : contactform7 */
.wpcf7-radio .wpcf7-list-item label input[type="radio"]	{ display:none;}
.wpcf7-radio .wpcf7-list-item label{
	display:inline-block; position:relative;
	font-weight:normal; color:#000; letter-spacing:0;
	cursor:pointer;
}
.wpcf7-radio .wpcf7-list-item label .wpcf7-list-item-label:before{
	content:'';
	position:absolute; top:0; left:-30px;
	display:inline-block; vertical-align:middle;
	margin:0; width:20px; height:20px;
	background-color:#B4B6B7; border:2px solid transparent; border-radius:2px;
	transition:all 200ms ease;
}
.wpcf7-radio .wpcf7-list-item label .wpcf7-list-item-label:after{
	content:'';
	position:absolute; top:8px; left:-21px;
	width:4px; height:8px;
	background-color:transparent; border:0 solid #d22063; border-radius:2px;
	transform:rotate(45deg); opacity:1; transition:all 200ms ease;
}
.wpcf7-radio .wpcf7-list-item label input[type="radio"]:checked + .wpcf7-list-item-label:before{
	background-color:#fff; border-color:#d22063; opacity:1; transform:scale(1);
}
.wpcf7-radio .wpcf7-list-item label input[type="radio"]:checked + .wpcf7-list-item-label:after{
	top:2px; left:-24px; width:8px; height:12px;
	background-color:transparnet; border:solid #d22063; border-width:0 2px 2px 0; transform:rotate(45deg);
}


/**
 *  - Contactform7 hide set		**/
.wpcf7-spinner	{ position:absolute; margin:0; top:calc(50% - 14px); left:calc(50% - 12px);}
.horizontal .wpcf7-list-item { display:inline-block; margin:0 2.0em 0 0; padding:0 0 0 30px;}
.vertical .wpcf7-list-item { display:block !important; margin:0 0 0.8em; padding:0 0 0 30px;}

.sent-complete { display:none;}
.sent .sent-complete { display:block;}
.sent .mailform-input{ display:none;}

.wpcf7-response-output,
.wpcf7-validation-errors,
.wpcf7-display-none,
.wpcf7-mail-sent-ok	{ display:none !important;}


.grecaptcha-badge {
  visibility: hidden !important;
}


/* **************************************************************************** */
/*
/* 13.0 - Media Queries
/*
/* **************************************************************************** */

@-ms-viewport 	{ width: device-width;}
@viewport 		{ width: device-width;}


/**
/*  720 <=                              */
@media screen and (min-width: 720px) {


	.ss		{ display:none;}
	.ll		{ display:none;}
	.mm		{ display:block;}
	.spn	{ display:none;}
	.pc		{ display:block;}

	/**
	 *  - Typography 			**/
	h1	{ font-size:2.8rem;}
	h2	{ font-size:2.4rem;}
	h3	{ font-size:2.0rem;}
	h4	{ font-size:1.6rem;}
	h5	{ font-size:1.5rem;}
	h6	{ font-size:1.5rem;}

	.btn-primary a,
	.btn-secondary a {  padding:1.6em 72px 1.6em 2.1em;}

	/**
	 *  - block layout 	
	**/
	.block-2,
	.block-2-1,
	.block-1-2	{ display:flex; flex-flow:row wrap; justify-content:flex-start; align-items:stretch; margin:0 auto 5rem;}

	.blocks .content,
	.block-2 .content,
	.block-2-1 .content,
	.block-1-2 .content,
	.block-3 .content,
	.block-4 .content,
	.block-5 .content	{ padding:1em 2%;}

	.block-2 > div,
	.block-2 > li	{ width:50%;}
	.block-2.separate	{ justify-content:space-between;}
	.block-2.separate > div,
	.block-2.separate > li	{ width:48%;}

	.block-2-1 > div:nth-child(1)	{ width:66%;}
	.block-2-1 > div:nth-child(2)	{ width:30%;}
	.block-2-1.reverse	{ flex-flow:row-reverse wrap;}

	.block-1-2 > div:nth-child(1)	{ width:30%;}
	.block-1-2 > div:nth-child(2)	{ width:66%;}
	.block-1-2.reverse	{ flex-flow:row-reverse wrap;}


	.block-gallery	{ margin-bottom:0;}
	.block-gallery.block-3 > div, .block-gallery.block-3 > li	{ width:calc( 100% / 3); padding:1px;}
	.block-gallery.block-4 > div, .block-gallery.block-4 > li	{ width:25%; padding:1px;}


	/**
	 * .page
	 */
	.page article	{ padding:0;}
	.page-title .en  { font-size:10.0rem;}
	.page-title .jp  { padding:5rem 0 0 4rem; font-size:2.8rem;}

}



/**
/*  1024px <=                          */
@media screen and (min-width: 1024px) {

	body,
	button,
	input,
	select,
	textarea { font-size: 1.5rem;}

	.ss		{ display:none;}
	.mm		{ display:none;}
	.ll		{ display:block;}
	.spn	{ display:none;}
	.pc		{ display:block;}

	/**
	 *  - Typography 	**/
	h1	{ font-size:3rem;}
	h2	{ font-size:2.6rem;}
	h3	{ font-size:2.1rem;}
	h4	{ font-size:1.6rem;}
	h5	{ font-size:1.5rem;}
	h6	{ font-size:1.4rem;}


	/**
	 *  - header 		**/
	#headerwrap	{ padding:8px 0 0;}
	.page-home #headerwrap	{ position:absolute; background-color:rgba(255,255,255,.8); box-shadow:0 0 0;}
	#branding	{ position:absolute; padding:12px 20px;}
	#branding .site-title	{ width:280px; height:60px;}
	#headnav	{ display:inline-block; vertical-align:middle;}
	#copyright		{ padding:3rem 0 3rem;}
	.btn-kifu	{ display:block;}
	.static	{ display:none;}

	.footer-content	{
		display:flex; flex-flow:row wrap; justify-content:flex-start; align-items:flex-start;
		font-size:1.4rem;
	}
	.footer-content .site-title	{ width:100%;}
	.footer-content .footer-sitemap	{ width:50%;}
	.footer-content .content	{ width:50%;}
	#copyright p	{ font-size:1.2rem;}

	/**
	 *  - container 	**/

	/**  column  **/
	.col2	{ display:flex; flex-flow:row wrap; justify-content:flex-start; align-items:flex-start;}
	.col2 > div	{ width:50%;}
	.col2 .content	{ padding:2rem 5%;}

	.col3	{ display:flex; flex-flow:row wrap; justify-content:flex-start; align-items:flex-start;}
	.col3 > div	{ width:calc( 100% / 3 );}
	.col3 .content	{ padding:2rem 3%;}

	.col4	{ display:flex; flex-flow:row wrap; justify-content:flex-start; align-items:flex-start;}
	.col4 > div	{ width:25%;}
	.col4 .content	{ padding:2rem 3%;}


	/**
	 * .page
	 */
	.page article	{ padding:0;}
	.page-title		{ padding:0 0 8rem;}
	.page-title .en	{ position:relative;}
	.page-title .jp	{ position:absolute; left:0; white-space:nowrap; letter-spacing:0.1em;}
	.page-content	{ padding:0 5% 0 20%;}
	
	
	/**
	 * .mailform
	 */
	div.mailform dt	{ float:left; display:inline-block; padding:2.4rem 0 0.8rem 0;}
	div.mailform dd	{ padding:2.4rem 0 1.6rem 15em; }

}



/* 1280px =<                            */
@media screen and (min-width: 1280px) {

	body,
	button,
	input,
	select,
	textarea { font-size: 1.6rem;}

	/**
	 *  - Typography 	**/
	h1	{ font-size:3.0rem;}
	h2	{ font-size:3.0rem;}
	h3	{ font-size:2.8rem;}
	h4	{ font-size:1.8rem;}
	h5	{ font-size:1.5rem;}
	h6	{ font-size:1.4rem;}
	
	/*  */
	#branding	{ padding:12px 40px;}
	#branding .site-title	{ width:320px; height:70px;}
	#headnav li { margin:0 10px; font-size:1.5rem;}
	#headnav li a	{ padding:2.6rem 1rem 2.7em;}
	.btn-kifu a { font-size:1.5rem;}
	.footer-content .footer-sitemap	{ width:40%;}
	.footer-content .content	{ 
		display:flex; flex-flow:row wrap; justify-content:flex-start; align-items:flex-start;
		width:60%;
	}
	.footer-content .content .address	{ margin-right:6rem;}

	/*  */
	.page article	{ padding:0;}
	.page-title .en	{ font-size:12.8rem;}
	.page-title .jp	{ padding:6rem 0 0 6rem; font-size:4.0rem; text-shadow:8px 6px 4px rgba(0,0,0,.08);}
	.page-content	{ padding:0 0 0 20%;}

}


/* >= 1600px                            */
@media screen and (min-width: 1600px) {

	#branding	{ padding:12px 40px;}
	#branding .site-title	{ width:360px; height:90px;}
	#headnav ul	{ padding:10px 0 0 100px;}
	#headnav li { margin:0 14px; font-size:1.6rem;}
	#headnav li a	{ padding:2.6rem 1rem 4.8rem;}
	.page-content		{ padding:0 0 0 18%;}

}





















