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

/*
Theme Name: 群馬県移行期医療支援センター
Theme URI: https://ikouki.med.gunma-u.ac.jp
Description: オリジナルテーマ
Author: 
Author URI: 
Version: 1.0
*/

/* 使用フォント */

@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@400;500;700&display=swap');

/* サイト内共通 */

body {
	font-family: "Zen Maru Gothic", sans-serif;
    font-weight: 500;
    font-style: normal;
	font-size:105%;
	color: #3c3c3c;
    background-color: #fbf5ef;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

p {
	line-height: 1.8em;
	margin-bottom: 1.2em;
	font-size:103%;
}

a {
	color:#7c6131;
	text-decoration:none;
	transition:0.2s ease-in-out;
}

a:hover {
	color:#a39378;
	text-decoration:underline;
}

a:visited {
	color:#684302;
}

.container {
    position: relative;
    margin: 0 auto;
}
.container:after {
    content: "";
    clear: both;
    display: block;
}

.table {
	border-collapse: collapse;
}

.table th,
.table td {
	border:1px solid #9c8a64;
}

section {
	padding:80px 0;
}

/* 見出し・テキスト */

/* 見出し */

h1.type01 {
    font-size: 1.4rem;
    color: #75472f;
	line-height: 1.4;
	margin-bottom: 30px;
	text-align:center;
}

h2.type01 {
    font-size: 1.8rem;
    color: #75472f;
	line-height: 1.4;
    background-color: #f5d0c4;
    padding:5px 5px 7px 15px;
    border-radius: 6px;
	margin-bottom: 30px;
}

h2.type02 {
    font-size: 1.8rem;
    color: #75472f;
	line-height: 1.4;
    text-align: center;
	margin-bottom: 30px;
}

h2.type03 {
    font-size: 1.4rem;
    color: #75472f;
	line-height: 1.4;
	margin-bottom: 10px;
}

h3.type01 {
    font-size: 1.4rem;
    line-height: 1.5;
    font-weight: 500;
    color: #75472f;
    margin-bottom: 1em;
    padding: 0 0 20px;
    background-image: url("images/h_line.svg");
    background-repeat: no-repeat;
    background-position: bottom left;
    background-size: contain;
}

h3.type02 {
    font-size: 1.4rem;
    line-height: 1.5;
    font-weight: 500;
    color: #75472f;
    text-align: center;
    margin-bottom: 1em;
    padding: 0 0 20px;
    background-image: url("images/h_line.svg");
    background-repeat: no-repeat;
    background-position: bottom left;
    background-size: contain;
}

h3.type03 {
    font-size: 1.4rem;
    line-height: 1.5;
    font-weight: 500;
    color: #75472f;
    text-align: center;
    margin-bottom: 1em;
}

h3.type04 {
    font-size: 1.2rem;
    line-height: 1.5;
    font-weight: 500;
    color: #75472f;
    margin-bottom: 10px;
}

/* ボタン */

.link_btn01 a {
	display: block;
    position: relative;
	background: #45b366;
	padding: 12px 30px;
	border-radius: 18px;
	color: #fff;
    font-weight:bold;
	text-align: center;
	width:270px;
	margin: 0 0 0 auto;
	text-decoration: none;
    border-bottom:2px solid #458d47;
    border-right:2px solid #458d47;
} 

.link_btn02 a {
	display: block;
	position: relative;
    background: #45b366;
	padding: 12px 30px;
	border-radius: 18px;
	color: #fff;
    font-weight:bold;
	text-align: center;
	width:320px;
	margin: 0 auto;
	text-decoration: none;
    border-bottom:2px solid #458d47;
    border-right:2px solid #458d47;
}

.link_btn01 a:hover,
.link_btn02 a:hover {
	background-color: #71ce4e;
}

.link_btn03 a {
	display: block;
    position: relative;
	background: #62a41f;
	padding: 15px 30px;
	border-radius: 6px;
	color: #fff;
    font-weight:bold;
	text-align: center;
	width:250px;
	margin: 0 auto;
	text-decoration: none;
}

.link_btn03 a:hover {
	background-color: #3c7000;
}

.link_btn01 a::after,
.link_btn02 a::after,
.link_btn03 a::after {
    position: absolute;
    top: 50%;
    margin-top: -8px;
    right: 15px;
    font-family: "Font Awesome 5 Free";
    content: "\f138";
    font-weight: 900;
}

.map {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    height: 0;
}

.map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.cc_tel {
    text-align: center;
    margin-bottom: 10px;
}

.cc_tel a {
    display: inline-block;
    font-size: 1.8rem;
}

/* テキスト装飾 */

.str01 {
    background-color: #fcf079;
    font-weight: 500;
}

/* 下層ページ共通 */

#c_header {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    aspect-ratio: 6 / 1;
    /*background-color: #333;*/
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

#c_header h1,
#c_header .cat_title {
    display: inline-block;
    color: #FFF;
    font-size: 2rem;
    font-weight: 500;
    text-shadow: 0px 0px 5px #0e8bc1;
}

.bc_nav {
    font-size: 0.9rem;
    margin: 15px 0 0;
}

.bc_nav a {
    text-decoration: none;
}

#main {
    padding: 0;
}

/* 固定ページ共通 */


/*
ページ別 
*/

.ch_bg01 {
    background-image: url("https://ikouki.med.gunma-u.ac.jp/cms/wp-content/uploads/2026/06/chead_bg01.png");
}

.ch_bg02 {
    background-image: url("https://ikouki.med.gunma-u.ac.jp/cms/wp-content/uploads/2026/06/chead_bg02.png");
}

.ch_bg03 {
    background-image: url("https://ikouki.med.gunma-u.ac.jp/cms/wp-content/uploads/2026/06/chead_bg03.png");
}

.ch_bg04 {
    background-image: url("https://ikouki.med.gunma-u.ac.jp/cms/wp-content/uploads/2026/06/chead_bg04.png");
}

.ch_bg05 {
    background-image: url("https://ikouki.med.gunma-u.ac.jp/cms/wp-content/uploads/2026/06/chead_bg05.png");
}

/* 医療機関の方 */

#md_soudan {
    background-image: url("https://ikouki.med.gunma-u.ac.jp/cms/wp-content/uploads/2026/07/md_contact_bg.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

/* お問い合わせフォーム */

.cf {
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.cf dt {
	flex-basis:100%;
	font-size:1rem;
	line-height:1.4;
    padding: 5px 0 0;
}

.req {
    display: inline-block;
    font-size: 0.7rem;
    background-color: #f04b78;
    color: #FFF;
    padding: 3px 6px;
    border-radius: 3px;
    margin-left: 5px;
}

.cf dd {
	flex-basis:100%;
    padding: 10px 0;
    margin-bottom: 15px;
}

.cf dd label {
    display: inline-block;
    font-size: 0.9rem;
    padding:2px 6px 2px 0;
    margin-right: 4px;
    line-height: 1.6;
}

.cf dd label input {
    margin-right: 4px;
}

input[type='text'],
input[type='email'],
input[type='tel'],
input[type='password'] {
  padding: 8px;
  border: 1px solid #ccc;
  border-radius: 5px;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  width:100%;
}

textarea{
  padding: 8px;
  border-radius: 5px;
  border: 1px solid #ccc;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  width:100%;
}

input:focus {
	border: 2px solid #ef8242;
}

.selectdiv {
  position: relative;
  /*Don't really need this just for demo styling*/
  
  float: left;
  min-width: 200px;
}

/* IE11 hide native button (thanks Matt!) */
select::-ms-expand {
display: none;
}

.selectdiv:after {
  content: '<>';
  font: 17px "Consolas", monospace;
  color: #333;
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
  right: 6px;
  /*Adjust for position however you want*/
  
  top: 10px;
  padding: 0 0 2px;
  border-bottom: 1px solid #999;
  /*left line */
  
  position: absolute;
  pointer-events: none;
}

.selectdiv select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  /* Add some styling */
  
  display: block;
  width: 100%;
  max-width: 320px;
  height: 34px;
  float: right;
  margin: 5px 0px;
  padding: 0px 18px;
  font-size: 14px;
  line-height: 1.75;
  color: #333;
  background-color: #ffffff;
  background-image: none;
  border: 1px solid #cccccc;
  -ms-word-break: normal;
  word-break: normal;
}

.submit {
	text-align: center;
}

.submit input[type="submit"]  {
	cursor: pointer;
    padding:8px 30px;
    width: 300px;
	font-size: 1rem;
	color: #FFF;
	background: #45b366;
	border-radius: 8px;
	border:none;
}

div.wpcf7 .wpcf7-spinner {
    display: block;
}

.cf-turnstile {
    margin: 20px auto;
    width: fit-content;
}

/* お知らせ */


.info_list {
	display: flex;
	flex-wrap: wrap;
	width:700px;
	margin: 0 auto 40px;
}

.info_list dt,
.info_list dd {
	margin-bottom: 15px;
	padding-bottom: 15px;
	/*border-bottom: 1px solid #c1b9aa;*/
}

.info_list dt {
	flex-basis: 25%;
	line-height: 1.3;
}

.info_list dd {
	flex-basis: 75%;
	line-height: 1.3;
}

.post h1 {
	font-size:1.7rem;
	margin-bottom:20px;
	line-height:1.4;
}

.post_date {
	text-align:right;
	margin-bottom:2em;
}

.post h2 {
	font-size:1.5rem;
	margin-bottom:10px;
	line-height:1.4;
	padding-bottom:5px;
	border-bottom:1px solid #45a667;
}

.post h3 {
	font-size:1.5rem;
	margin-bottom:10px;
	line-height:1.4;
}

.post p + h2 {
	margin-top:30px;
}

/* ページナビ */

.wp-pagenavi {/* 全体 */
    margin: 20px 0;
    font-size: 12px;
	text-align:center;
}
.wp-pagenavi a {/* フォント色 */
    color: #4a4a4a;
}
.pages {/* 左の表記 */
    margin-right: 20px;
}
.wp-pagenavi .current,
.wp-pagenavi a.page {/* ボタン */
    margin: 0 6px 6px 0;
    display: inline-block;
	color: #45b366;
    border: solid 1px #45b366;
	background-color:transparent;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    line-height: 40px;
    text-align: center;
}
.wp-pagenavi .current {/* カレント数字 */
    border: none;
    background: #45b366;
    color: #fff;
}
.wp-pagenavi a.page:hover {/* マウスオーバー */
    background: #71ce4e;
    color: #fff;
}
.wp-pagenavi .first,
.wp-pagenavi .extend {/* ... */
    margin-right: 10px;
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {/* 記号の削除 */
    display: none;
}

/* 汎用スタイル */

.txt_white {
    color: #FFF !important;
}

.txt_green {
    color: #62a41f;
    font-weight: 600;
}

.img_radius {
	border-radius:6px;
}

.narrow {
	width: 760px;
	margin: 0 auto;
}

.narrow_ex {
	width: 560px;
	margin: 0 auto;
}

.row {
    justify-content: space-between;
}

.row-rev {
    flex-direction: row-reverse;
}

.row-3r:after{
    content:"";
    display: block;
    width:31%;
}

.col-img {
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap: wrap;
    line-height: 1.4;
}

.col-img img {
    display: block;
    /*width: 100%;*/
    max-width: 100%;
    height:auto;
    margin-bottom: 10px;
    border-radius: 6px;
}

.table01 th, .table01 td {
    padding: 15px;
    line-height: 1.4;
}

.table01 th {
    background-color: #ede5d6;
}

.dl_table01 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto;
}

.dl_table01 dt,
.dl_table01 dd {
	padding:10px 0;
	margin-bottom: 20px;
}

.dl_table01 dt {
	border-bottom:2px solid #5b5b5b;
}

.dl_table01 dd {
	border-bottom:1px solid #d6d6d6;
}

.box01 {
    background-color: #fffcd3;
    padding: 20px 30px 10px 30px;
    border-radius: 12px;
}

.box02 {
    padding: 20px 30px 10px 30px;
    border:1px solid #75472f;;
    border-radius: 12px;
}

.box03 {
    background-color: #fff;
    padding: 30px 30px 10px 30px;
    border-radius: 12px;
}

.txt_center {
    text-align: center;
}

.pc_center {
	text-align: center;
}

/*------------------------------------------
  Responsive Grid Media Queries - 1280, 1024, 768, 480
   1280-1024   - デスクトップ（デフォルトのグリッド）
   1024-768    - タブレット横長
   768-480     - タブレット縦長
   480-less    - スマホ
--------------------------------------------*/
@media all and (min-width: 1024px) and (max-width: 1280px) {

.container {
	width:1040px;
	margin: 0 auto;
}
.container_wide {
	width:1200px;
	margin: 0 auto;
}

}
 
@media all and (min-width: 768px) and (max-width: 1024px) {

img {
	max-width: 100%;
	width:100%;
	height:auto;
}

}
 
@media only screen and (min-width: 769px) {
 
a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
}


}

@media only screen and (max-width: 768px) {

img {
	max-width: 100%;
	height:auto;
}

section {
	padding:40px 0;
}	
	
.narrow,
.narrow_ex {
	width: 100%;
}

.col-img {
    text-align: center;
}



/* 見出し */



/* 下層ページ共通 */

#c_header {
    aspect-ratio: 5 / 1;
}

#c_header h1 {
    font-size: 1.4rem;
}

#main {
    padding: 0;
}





/*
下層個別
*/


/* お知らせ */

.info_list {
	width:100%;
	margin: 0 auto 40px;
}

.info_list dt,
.info_list dd {
	
}

.info_list dt {
	flex-basis: 100%;
	line-height: 1.3;
	margin: 0 0 5px;
	border: none;
	padding: 0;
}

.info_list dd {
	flex-basis: 100%;
	line-height: 1.3;
	margin-bottom: 15px;
	padding-bottom: 15px;
}

/* 汎用クラス */

.col-img {
    margin-bottom: 15px;
}

.dl_table01 {
	width: 100%;
}

.dl_table01 dt,
.dl_table01 dd {
	flex-basis:100%;
}

.dl_table02 {
	width: 100%;
}

.dl_table02 dt,
.dl_table02 dd {
	flex-basis:100%;
}

.dl_table02 dt {
    margin-bottom: 5px;
}

.dl_table02 dd {
    border:none;
}

.pc_center {
	text-align: left;
}

.sp_center {
    text-align: center;
}

.link_btn01 a {
	margin: 0 auto;
}

}
 
@media all and (max-width: 480px) {

/* 見出し */

h2.type01 {
    font-size: 1.5rem;
	margin-bottom: 20px;
}

h2.type02 {
    font-size: 1.5rem;
	margin-bottom: 20px;
}

/* 下層ページ共通 */

.prg_nav {
    flex-wrap: wrap;
    justify-content: center;
}

.prg_nav li {
    width:80%;
    margin: 0 0 20px;
}

/* 共通お問い合わせ */

.cc_tel {
    font-size: 9vw;
    padding-left:40px;
    background-size:30px auto;
}

	
/* お知らせ */
	
.info_list_item {
	flex-wrap:wrap;	
}
	
.info_list_date {
	flex-basis:100%;
	margin-bottom:8px;
}

/* 汎用スタイル */

.table01 th, .table01 td {
    display: block;
    padding: 15px;
}


}