@charset "utf-8";
/* CSS Document */

/*-------------------------------*/
/*add-single.css*/
/*-------------------------------*/
/*記事ページの幅を変更する　20200417*/
body.post.single .single-content__wrapper{
	width: 80%;
	max-width: 1200px;
}
@media only screen and (max-width: 1200px){
	body.post.single .single-content__wrapper{
		width: 90%;
	}
} 
@media only screen and (max-width: 1000px){
	body.post.single .single-content__wrapper{
		width: 100%;
	}
}

/*記事ページのaタグの色を変更する　20200424*/
body.post.single .single-content__item p a{
	color: #872434;
	border-bottom: 1px dotted #872434;
}
body.post.single .single-content__item p a:hover{
	color: #d8607e;
	border-bottom: 1px solid #d8607e;
}

/*-------------------------------*/
/*add-insta.css*/
/*-------------------------------*/
/* 20210315追加 twitter-linkをコピー */
/* insta-link
-----------------------------*/
.insta-link {
	position: fixed;
	bottom: 40px;
	right: 30px;
	background: rgba(255, 255, 255, 0.5);
	padding: 2px;
	/*border-radius: 100%;*/
	border-radius: 20%;
	transition: background 0.5s;
	z-index: 1010;
}
.insta-link:hover {
	background: #153c77;
}

.insta-link a {
	display: block;
	color: #fff;
	width: 60px;
	height: 60px;
	/*position: relative;*/
	background: url("../img/icon_instagram.png");
	/*border-radius: 100%;*/
	overflow: hidden;
}
/*.insta-link a i {
	display: block;
	position: absolute;
	margin: auto;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 1em;
	height: 1em;
	font-size: 2rem;
}*/

@media only screen and (max-width:480px) {
	/* 20210315追加 */
	.insta-link {
		bottom: 20px;
		right: 15px;
	}
}

/*-------------------------------*/
/*add-contact.css*/
/*-------------------------------*/
/*20210426追加
お問い合わせページテキスト中央揃え*/
body.contact div.box--center p.contact_center {
	text-align: center;
}

/*-------------------------------*/
/*add-menu.css*/
/*-------------------------------*/
/* グローバルメニューレスポンシブ切替幅変更 20210511 max-width: 1535px */
/* グローバルメニューレスポンシブ切替幅変更 20240228 max-width: 1892px */
@media only screen and (max-width: 1892px){
	.global-header__menu {
		position: fixed;
		display: block;
		width: 400px;
		max-width: 100%;
		height: 100%;
		pointer-events: none;
		padding: 40px;
		top: 0;
		right: 0;
	}
	.global-header__menu[data-js-visible='show'] {
		display: block;
		background: rgba(21, 60, 119, 0.9);
		pointer-events: auto;
	}

	.global-header__menu-button {
		display: block;
	}
	.global-header__menu[data-js-visible='show'] .global-header__menu-button span {
		background: #fff;
		transform-origin: center center;
	}
	.global-header__menu[data-js-visible='show'] .global-header__menu-button span:nth-of-type(1) {
		transform: translate(0, 0) rotate(
		45deg
		);
	}
	.global-header__menu[data-js-visible='show'] .global-header__menu-button span:nth-of-type(2) {
		opacity: 0;
	}
	.global-header__menu[data-js-visible='show'] .global-header__menu-button span:nth-of-type(3) {
		transform: translate(0, 0) rotate(
		-45deg
		);
	}
	.global-header__menu-scroll {
		width: 100%;
		height: auto;
		overflow: hidden;
		display: none;
	}
	.global-header__menu[data-js-visible='show'] .global-header__menu-scroll {
		display: block;
	}
	.global-header__menu-scroll > ul {
		display: block;
		overflow-x: scroll;
		width: 400px;
		max-width: 100%;
		height: 100%;
		position: fixed;
		padding: 40px 40px;
		margin: 0;
		top: 0;
		right: 0;
		left: auto;
	}
	.global-header__menu-scroll > ul > li {
		display: block;
		text-align: left;
	}
	.global-header__menu-scroll > ul > li.smf_hide{
		display: none;
	}
	.global-header__menu-scroll > ul > li > a {
		color: #fff;
		height: auto;
		line-height: 2;
		padding: 10px 0;
		border-bottom: 1px solid rgba(255, 255, 255, 0.5);
	}
	.global-header__menu-children {
		position: static;
		background: transparent;
		transform: translateY(0);
		top: auto;
		padding: 1em;
		display: none;
	}
	.global-header__menu-children dl {
		margin: 0;
	}
	.global-header__menu-children dl dt {
		display: none;
	}
	.global-header__menu-children dl dd {
		display: block;
		text-align: left;
	}
	.global-header__menu-children dl dd a {
		padding: 10px 0;
	}
	
	.global-header__menu-scroll > ul > li[data-show-type='sp'] {
		display: block;
	}
	.global-header__menu-scroll > ul > li > a {
		color: #fff;
		height: auto;
		line-height: 2;
		padding: 10px 0;
		border-bottom: 1px solid rgba(255, 255, 255, 0.5);
	}
	.global-header__menu-mu-link > span {
		display: block;
		margin: 0;
	}
	.global-header__menu-mu-link > span > a {
		color: #fff;
		font-size: 1rem;
		display: block;
		padding: 10px 0;
		line-height: 2;
		font-weight: normal;
		border: 0;
	}
	.global-header__menu-mu-link > span > a:hover {
		background-color: transparent;
	}
	.global-header__menu-mu-link > span > a span {
		position: relative;
		padding-right: 2.5em;
	}
}

/* フッターメニュー幅変更 20210511 */
.global-footer__wrapper {
    width: 1000px;
    margin: 0 auto;
}
.global-footer nav:first-of-type {
	display: flex;
	flex-wrap: wrap;
}
.global-footer nav:first-of-type .global-footer__nav-wrapper {
    width: 25%;
    float: none;
}
@media only screen and (max-width: 1050px){
	.global-footer__wrapper {
		width: 100%;
		margin: 0 auto;
	}
	.global-footer nav:first-of-type .global-footer__nav-wrapper {
		width: 50%;
		margin-bottom: 20px;
	}
}
/*@media only screen and (max-width: 768px){
	.global-footer nav:first-of-type .global-footer__nav-wrapper {
		display: none;
	}
}*/

/* フッターメニュー　スマホ表示追加 20210517 */
.global-footer nav .footer-card-nav {
	display: none;
}
@media only screen and (max-width: 1050px){
	.global-footer nav .footer-card-nav {
		display: block;
	}
	.global-footer nav .footer-card-nav p{
		text-align: center;
	}
}

/*-------------------------------*/
/*add-download.css*/
/*-------------------------------*/
/*20210521*/
/* ダウンロードページ　３マスから４マスへ　並び調整 */
.single-content__wrapper {
	flex-wrap: wrap;
}
.single-content__item {
	/*flex: 30%;*/
	padding-bottom: 40px;
}

/*-------------------------------*/
/*add-card.css*/
/*-------------------------------*/
#card .column-content__item-package {
    width: 80%;
    margin: 0 auto;
}

#card .column-content__item p {
    text-align: center;
}

#tips_content_container.column-content__wrapper {
    padding-top: 100px;
}

ul#tips_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    /*align-items: center;*/
    width: 100%;
    max-width: 960px;
    margin: 0 auto;
    list-style-type: none;
    z-index: 2;
}
ul#tips_list li {
    min-width: 20%;
    margin: 10px;
}
@media only screen and (max-width: 520px){
ul#tips_list li {
    min-width: 45%;
    margin: 5px;
    font-size: 13px;
}
}

ul#tips_list li a {
    display: block;
    border: 1px solid #153c77;
    padding: 1rem 2rem;
    line-height: 1;
    text-align: center;
    color: #fff;
    background-color: #153c77;
    transition: background 0.3s ease, color 0.3s ease;
}
@media only screen and (max-width: 960px){
ul#tips_list li a {
    padding: 0.5rem 1rem;
    font-size: 0.9em;
}
}

ul#tips_list li a:hover {
    color: #153c77;
    background-color: rgba(255,255,255,0);
}

.tips_content {
    padding-top: 100px;
    margin-top: -100px;
    width: 100%;
    max-width: 960px;
    margin-left: auto;
    margin-right: auto;
}

ul.tips_content_link {
    list-style-type: none;
    margin: 0;
}
ul.tips_content_link li {
    position: relative;
    padding-left: 20px;
    font-size: 14px;
}
ul.tips_content_link li::before {
    content: '\f15b';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    color: #153c77;
    position: absolute;
    top: 0;
    left: 0;
}

/*-------------------------------*/
/*add-saguide.css*/
/*-------------------------------*/
/*20221031*/
/* パスワード保護 */
#saguide_pw input {
    padding: 0.5em;
}
#saguide_pw input[name="Submit"] {
    cursor: pointer;
}

/* ログインフォーム追加 */
form.add_form {
    margin: 0 auto;
}
form.add_form select ,
form.add_form input {
    padding: 5px;
    margin: 5px 5px 5px 10px;
}
form.add_form input[type="submit"] {
    margin: 5px 5px 5px 0;
}

.column-content__wrapper.sa_guide_container,
.column-content__item-package.sa_guide_container {
    display: block;
}
ul.sa_guide{
	list-style: none;
    width: 100%;
    max-width: 960px;
    margin-top: 40px;
    margin-left: auto;
    margin-right: auto;
}
ul.sa_guide li{
	margin-bottom: 10px;
	margin-left: 0;
}
ul.sa_guide li dl{
	margin-bottom: 0;
}
ul.sa_guide li dl dt{
	padding: 20px 50px 20px 30px;
	background-color: #fff;
	border: 1px solid #ccc;
	position: relative;
	margin: 0;
    font-weight: normal;
    line-height: 1.8;
    cursor: pointer;
}
/*ul.sa_guide li dl dt::before{
	content: "Q";
	margin-right: 10px;
	margin-left: -20px;
	font-size: 20px;
	font-weight: bold;
}*/
ul.sa_guide li dl dt::after{
	content: "＋";
	font-size: 30px;
    font-weight: normal;
	position: absolute;
	top: 50%;
	right: 0;
	margin-right: 20px;
    transform: translate(0, -50%);
}
ul.sa_guide li dl dt.active::after{
	content: "－";
}
ul.sa_guide li dl dd{
	display: none;
	padding: 20px 30px;
	background-color: #fff;
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc;
	border-right: 1px solid #ccc;
	/*margin-top: 5px;*/
    margin-left: 0;
    line-height: 1.8;
}
ul.sa_guide li dl dd .pdf{
    position: relative;
    padding-left: 20px;
    font-size: 14px;
    margin: 0.5em 0;
}
ul.sa_guide li dl dd .pdf::before{
    content: '\f15b';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    color: #153c77;
    position: absolute;
    top: 0;
    left: 0;
}

/*-------------------------------*/
/*add-202303.css*/
/*-------------------------------*/
.no_wrap {
    white-space: nowrap
}
/*-----------------
トップページ スライダー
------------------*/
ul.top_slider {
    margin: 0 auto;
    width: 100%;
    padding: 0;
}
/*ul.top_slider li {
    width: 100%;
    height: auto;
    text-align: center;
}*/
ul.top_slider li img {
    width: 100%;
    height: auto;
    /*margin: 0 auto;
    filter: drop-shadow(0px 0px 5px rgba(0,0,0,0.3));*/
}

@media only screen and (max-width: 1100px){
ul.top_slider li {
    width: 100%;
    height: auto;
}
}
.topics-title {
    margin: 0.2em 0 0;
}

/* slick-prev,slick-next */
.top_slider .slick-prev ,
.top_slider .slick-next {
    z-index: 4000;
}
.top_slider .slick-prev {
    left: 5px;
}
.top_slider .slick-next {
    right: 5px;
}

/*-------------------------------*/
/*add-202403.css*/
/*-------------------------------*/
/* 20240229 トップページ専攻バナー追加 */
.top_banner {
    background: linear-gradient(90deg, #f9d7e0 0%, #f9d7e0 50%, #b9e0f9 50%, #b9e0f9 100%);
}
.top_banner_container {
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
     font-weight: 500;
}
.top_banner_block {
     width: 50%;
     max-width: 500px;
     text-align: center;
     padding: 1em 0;
}
@media only screen and (max-width: 630px){
.top_banner {
    background: linear-gradient(180deg, #f9d7e0 0%, #f9d7e0 50%, #b9e0f9 50%, #b9e0f9 100%);
}
.top_banner_block {
     width: 100%;
}
}
.top_banner_block.banner01 {
    background-color: #f9d7e0;
}
.top_banner_block.banner02 {
    background-color: #b9e0f9;
}
.top_banner_block a {
    display: block;
}
.top_banner_block a p.top_banner_block_text {
    font-size: 1.2em;
    line-height: 1.5;
    position: relative;
    display: inline-block;
    padding: 0 45px;
}
.top_banner_block a p.top_banner_block_text:before,
.top_banner_block a p.top_banner_block_text:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 44px;
    height: 2px;
    background-color: #153c77;
}
.top_banner_block a p.top_banner_block_text:before {
    -webkit-transform: rotate(60deg);
    transform: rotate(60deg);
    left: 0;
}
.top_banner_block a p.top_banner_block_text:after {
    -webkit-transform: rotate(-60deg);
    transform: rotate(-60deg);
    right: 0;
}

.top_banner_block a p.top_banner_block_btn {
    border: 2px solid #fff;
    color: #fff;
    width: 300px;
    margin: 0.3em auto 1em;
    font-size: 1.5em;
    height: 80px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    transition: all 0.5s;
}
.top_banner_block a p.top_banner_block_btn.banner01 {
    background-color: #ed7987;
}
.top_banner_block a p.top_banner_block_btn.banner02 {
    background-color: #2ea7e0;
}
.top_banner_block a:hover p.top_banner_block_btn.banner01 {
    background-color: #eda6ae;
}
.top_banner_block a:hover p.top_banner_block_btn.banner02 {
    background-color: #5ab6e0;
}

/* 20240229 武庫女生の１日 レイアウト変更 */
#oneday .single-content__wrapper {
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.05) 1.5625vw, transparent);
}
#oneday p.oneday_text {
    margin: 0 0 1em;
}
#oneday p.oneday_table_memo {
    line-height: 1.2;
    margin: 0 0 1em;
}
#oneday p.oneday_note {
    margin: 0;
}
#oneday .oneday_table_container {
    max-width: 100%;
    overflow-x: auto;
}
#oneday .oneday_table {
    white-space: nowrap;
    margin: 0 0 5px;
}
#oneday .oneday_table tr.tr_week {
    background-color: #a6b4d3;
}
#oneday .oneday_table th.th_time {
    background-color: #dee4f2;
}
#oneday .oneday_table td span.common {
    color: #cdb20e;
    font-size: 0.8em;
}
#oneday .oneday_table td span.teaching {
    color: #ee7886;
    font-size: 0.8em;
}
#oneday p.oneday_img {
    text-align:center
}
#oneday span.example {
    font-size: 0.8em;
    vertical-align: top;
}

/* 20240229 学科案内 教員紹介レイアウト変更 */
/*.staff-content__wrapper {
    justify-content: space-between;
}
.staff-content__wrapper .major_staff-content__wrapper {
    width: 49%;
}*/
.major_staff-content__wrapper-title {
    text-align: center;
    font-size: calc(12px + 0.5vw);
}
@media only screen and (max-width: 768px){
/*.staff-content__wrapper .major_staff-content__wrapper {
    width: 100%;
}*/
.major_staff-content__wrapper-title {
    padding-top: 6.25vw;
}
}
/*.major_staff-content__wrapper .major_staff-content__container {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    position: relative;
}
.major_staff-content__container .staff-content__item {
    width: calc(100% / 2 - 2px);
}
@media only screen and (max-width: 1200px){
.major_staff-content__container .staff-content__item {
    width: calc(100% - 2px);
}
}
*/
/* 専攻名 */
.entry-body .staff-content__item-detail table caption {
    text-align: center;
    font-weight: normal;
    caption-side: top;
    white-space: nowrap;
}

/* 写真の文字かぶり解消 */
.staff-content__item-content {
    padding: 40px 140px 40px 20px;
}

/* 2列追加 */
@media only screen and (max-width: 1000px){
.staff-content__item {
    width: calc(100% / 2 - 2px);
    margin: -89px 1px 1px;
    padding-top: 90px;
}
}
@media only screen and (max-width: 768px){
.staff-content__item {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
}
}

/* ゼミ紹介 カテゴリーボタンの幅変更 */
.kininaru-content__option button {
    width: 300px;
}
@media only screen and (max-width: 1024px){
.kininaru-content__option button {
    width: auto;
}
}

/* 20241008 助手紹介 名前を画像に */
.staff-content__item-title.joshu img.center {
    display: none;
}
.staff-content__item-detail-title img.left {
    display: none;
}
.staff-content__item-detail-title img.center {
    display: block;
    margin: 0 auto;
}
@media only screen and (max-width: 1200px){
.staff-content__item-title.joshu img {
    height: 34px;
    width: auto;
}
}
@media only screen and (max-width: 768px){
.staff-content__item-title.joshu img {
    height: 30px;
    width: auto;
}
}
@media only screen and (max-width: 420px){
.staff-content__item-title.joshu img {
    height: 28px;
    width: auto;
}
}

/* 20250321 各専攻のarticleに段ずらしを反映 */
.english-culture .column-content:nth-child(odd)::before,
.global-communication .column-content:nth-child(odd)::before {
    left: calc(12.5vw - ((100vw - 100%) / 2));
}
.english-culture .column-content:nth-child(odd) .column-content__header,
.global-communication .column-content:nth-child(odd) .column-content__header {
    width: calc(87.5vw - ((100vw - 100%) / 2));
}
.english-culture .column-content:nth-child(odd) .column-content__wrapper,
.global-communication .column-content:nth-child(odd) .column-content__wrapper {
    margin-left: calc(9.375vw - ((100vw - 100%) / 2));
}
.english-culture .column-content:nth-child(odd) .column-content__wrapper::after,
.global-communication .column-content:nth-child(odd) .column-content__wrapper::after {
    left: -9.375vw;
}

/* 20250321 在学生用のarticleに段ずらしを反映 */
.card .column-content:nth-child(odd)::before {
    left: calc(12.5vw - ((100vw - 100%) / 2));
}
.card .column-content:nth-child(odd) .column-content__header {
    width: calc(87.5vw - ((100vw - 100%) / 2));
}
.card .column-content:nth-child(odd) .column-content__wrapper {
    margin-left: calc(9.375vw - ((100vw - 100%) / 2));
}
.card .column-content:nth-child(odd) .column-content__wrapper::after {
    left: -9.375vw;
}

/*-------------------------------*/
/*add-2025.css*/
/*-------------------------------*/
/*メニューボタンにMENU追加*/
.global-header__menu-button span:nth-of-type(1) {
    transform: translate(0, -14px);
}
.global-header__menu-button span:nth-of-type(2) {
    transform: translate(0, -7px);
}
.global-header__menu-button span:nth-of-type(3) {
    transform: translate(0, 0);
}
.global-header__menu-button span:nth-of-type(4) {
    transform: translate(0, 7px);
    text-align: center;
    height: auto;
    background: transparent;
    font-size: 10px;
    color: #153c77;
}
@media only screen and (max-width: 1892px) {
    .global-header__menu[data-js-visible='show']
    .global-header__menu-button span:nth-of-type(4) {
        color: #fff;
        background: transparent;
        transform: translate(0, 14px);
    }
}








